Skip to content
Permalink
Browse files

Release 5.0

Release 5.0
  • Loading branch information...
cryptoprofitswitcher committed Aug 17, 2018
2 parents 6b544dd + f0f3766 commit e68149f923ae753cc00c1e0cac4d443fe9520eda
Showing with 810 additions and 115 deletions.
  1. +2 −0 CREDITS.md
  2. +10 −3 Coins/Aeon.json
  3. +12 −3 Coins/Bittube.json
  4. +12 −3 Coins/Graft.json
  5. +12 −3 Coins/Haven.json
  6. +12 −3 Coins/Loki.json
  7. +12 −3 Coins/Masari.json
  8. +12 −3 Coins/Monero.json
  9. +12 −3 Coins/MoneroOcean.json
  10. +89 −0 Coins/Quantum.json
  11. +12 −3 Coins/Stellite.json
  12. +19 −2 CryptonightProfitSwitcher.csproj
  13. +1 −1 Enums/Miner.cs
  14. +1 −1 Enums/ProfitProvider.cs
  15. +2 −0 Factories/MinerFactory.cs
  16. +2 −0 Factories/PoolProfitProviderFactory.cs
  17. +32 −3 Helpers.cs
  18. +16 −0 JceMiner/config_heavy.txt
  19. +24 −0 JceMiner/config_lite.txt
  20. +19 −0 JceMiner/config_v7.txt
  21. BIN JceMiner/jce_cn_gpu_miner64.exe
  22. +4 −0 Mineables/Mineable.cs
  23. +1 −0 Miners/CastXmrMiner.cs
  24. +1 −0 Miners/IMiner.cs
  25. +174 −0 Miners/JceMiner.cs
  26. +1 −0 Miners/SrbMiner.cs
  27. +6 −2 Miners/XmrStakMiner.cs
  28. +18 −0 Models/MineableRewardResult.cs
  29. +2 −1 Models/Settings.cs
  30. +11 −2 NicehashAlgorithms/CryptonightHeavy.json
  31. +11 −2 NicehashAlgorithms/CryptonightV7.json
  32. +66 −0 ProfitPoviders/CryptunitApi.cs
  33. +3 −3 ProfitPoviders/MinerRocksApi.cs
  34. +3 −3 ProfitSwitchingStrategies/IProfitSwitchingStrategy.cs
  35. +17 −4 ProfitSwitchingStrategies/MaximizeCoinsStrategy.cs
  36. +31 −5 ProfitSwitchingStrategies/MaximizeFiatStrategy.cs
  37. +26 −5 ProfitSwitchingStrategies/WeightedCoinsPriceStrategy.cs
  38. +98 −36 Program.cs
  39. +4 −2 README.md
  40. BIN SRBMiner/SRBMiner-CN.exe
  41. +1 −1 SRBMiner/config_bittube.txt
  42. +1 −1 SRBMiner/config_fast.txt
  43. +1 −1 SRBMiner/config_stellite.txt
  44. +2 −2 SRBMiner/config_v7.txt
  45. +6 −2 Settings.json
  46. +4 −4 XmrStak/amd_heavy.txt
  47. +4 −4 XmrStak/amd_v7.txt
  48. +1 −1 version.txt
@@ -3,7 +3,9 @@
* [fireice-uk's and psychocrypt's Xmr-Stak](https://github.com/fireice-uk/xmr-stak)
* [Gandalph3000's Cast XMR](http://www.gandalph3000.com/)
* [doktor83's SRBMiner](https://bitcointalk.org/index.php?topic=3167363.0)
* [JCE Miner](https://bitcointalk.org/index.php?topic=3281187.0)
* [MineCryptoNight API](http://minecryptonight.net/api)
* [CryptUnit API](https://www.cryptunit.com/api/)
* [miner.rocks API](https://miner.rocks/)
* [cryptoknight.cc API](https://cryptoknight.cc/)
* [MoneroOcean API](https://moneroocean.stream)
@@ -7,7 +7,7 @@
"TickerSymbol": "AEON",
// Mining algorithm of coin, can be CryptonightV7, CryptonightHeavy, CryptonightLite, CryptonightBittube, CryptonightStellite, CryptonightHaven or CryptonightMasari
"Algorithm": "CryptonightLite",
// Used Miner, can be XmrStak, CastXmr or SRBMiner (Recommended: XmrStak)
// Used Miner, can be XmrStak, CastXmr, SRBMiner or JceMiner (Recommended: XmrStak)
"Miner": "XmrStak",
// Path to script that runs before the miner starts, can be null.
// For example:: Path to batch file that sets specific OverdriveN settings for this coin
@@ -21,7 +21,7 @@
"OverrideExpectedHashrate": null,
// Override the profit timeframe, can be Live, Day or null.
"OverrideProfitTimeframe": null,
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, MinerRocksApi, CryptoknightCCApi) or null.
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, CryptunitApi, MinerRocksApi, CryptoknightCCApi) or null.
"OverridePoolProfitProviders": null,
// On the determination of the most profitable coin, the actual estimated profit will be multiplied by this, can be a decimal or null.
"PreferFactor": 1.0,
@@ -75,7 +75,14 @@
// Extra arguments that will be passed over to SRBMiner, can be a string or null
"SRBMinerExtraArguments": null,
// Set if you want to also start Xmr-Stak for CPU Mining
"SRBMinerUseXmrStakCPUMining": true
"SRBMinerUseXmrStakCPUMining": true,

/* JCEMINER CONFIGURATION - NEEDED IF MINER IS JCEMINER */

// Path to JceMiner executable
"JceMinerPath": "JceMiner/jce_cn_gpu_miner64.exe",
// Path to JceMiner config (can be null <- then auto configuration will be used)
"JceMinerConfig": "JceMiner/config_lite.txt",
// Extra arguments for JceMiner
"JceMinerExtraArguments": null
}
@@ -7,7 +7,7 @@
"TickerSymbol": "TUBE",
// Mining algorithm of coin, can be CryptonightV7, CryptonightHeavy, CryptonightLite, CryptonightBittube, CryptonightStellite, CryptonightHaven or CryptonightMasari
"Algorithm": "CryptonightBittube",
// Used Miner, can be XmrStak, CastXmr or SRBMiner
// Used Miner, can be XmrStak, CastXmr, SRBMiner or JceMiner
"Miner": "XmrStak",
// Path to script that runs before the miner starts, can be null.
// For example:: Path to batch file that sets specific OverdriveN settings for this coin
@@ -21,7 +21,7 @@
"OverrideExpectedHashrate": null,
// Override the profit timeframe, can be Live, Day or null.
"OverrideProfitTimeframe": null,
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, MinerRocksApi, CryptoknightCCApi) or null.
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, CryptunitApi, MinerRocksApi, CryptoknightCCApi) or null.
"OverridePoolProfitProviders": null,
// On the determination of the most profitable coin, the actual estimated profit will be multiplied by this, can be a decimal or null.
"PreferFactor": 1.0,
@@ -75,6 +75,15 @@
// Extra arguments that will be passed over to SRBMiner, can be a string or null
"SRBMinerExtraArguments": null,
// Set if you want to also start Xmr-Stak for CPU Mining
"SRBMinerUseXmrStakCPUMining": true
"SRBMinerUseXmrStakCPUMining": true,

/* JCEMINER CONFIGURATION - NEEDED IF MINER IS JCEMINER */

// Path to JceMiner executable
"JceMinerPath": "JceMiner/jce_cn_gpu_miner64.exe",
// Path to JceMiner config (can be null <- then auto configuration will be used)
"JceMinerConfig": "JceMiner/config_heavy.txt",
// Extra arguments for JceMiner
"JceMinerExtraArguments": null

}
@@ -7,7 +7,7 @@
"TickerSymbol": "GRFT",
// Mining algorithm of coin, can be CryptonightV7, CryptonightHeavy, CryptonightLite, CryptonightBittube, CryptonightStellite, CryptonightHaven or CryptonightMasari
"Algorithm": "CryptonightV7",
// Used Miner, can be XmrStak, CastXmr or SRBMiner (Recommended: XmrStak)
// Used Miner, can be XmrStak, CastXmr, SRBMiner or JceMiner (Recommended: XmrStak)
"Miner": "XmrStak",
// Path to script that runs before the miner starts, can be null.
// For example:: Path to batch file that sets specific OverdriveN settings for this coin
@@ -21,7 +21,7 @@
"OverrideExpectedHashrate": null,
// Override the profit timeframe, can be Live, Day or null.
"OverrideProfitTimeframe": null,
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, MinerRocksApi, CryptoknightCCApi) or null.
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, CryptunitApi, MinerRocksApi, CryptoknightCCApi) or null.
"OverridePoolProfitProviders": null,
// On the determination of the most profitable coin, the actual estimated profit will be multiplied by this, can be a decimal or null.
"PreferFactor": 1.0,
@@ -75,6 +75,15 @@
// Extra arguments that will be passed over to SRBMiner, can be a string or null
"SRBMinerExtraArguments": null,
// Set if you want to also start Xmr-Stak for CPU Mining
"SRBMinerUseXmrStakCPUMining": true
"SRBMinerUseXmrStakCPUMining": true,

/* JCEMINER CONFIGURATION - NEEDED IF MINER IS JCEMINER */

// Path to JceMiner executable
"JceMinerPath": "JceMiner/jce_cn_gpu_miner64.exe",
// Path to JceMiner config (can be null <- then auto configuration will be used)
"JceMinerConfig": "JceMiner/config_v7.txt",
// Extra arguments for JceMiner
"JceMinerExtraArguments": null

}
@@ -7,7 +7,7 @@
"TickerSymbol": "XHV",
// Mining algorithm of coin, can be CryptonightV7, CryptonightHeavy, CryptonightLite, CryptonightBittube, CryptonightStellite, CryptonightHaven or CryptonightMasari
"Algorithm": "CryptonightHaven",
// Used Miner, can be XmrStak, CastXmr or SRBMiner (Recommended: XmrStak)
// Used Miner, can be XmrStak, CastXmr, SRBMiner or JceMiner (Recommended: XmrStak)
"Miner": "XmrStak",
// Path to script that runs before the miner starts, can be null.
// For example:: Path to batch file that sets specific OverdriveN settings for this coin
@@ -21,7 +21,7 @@
"OverrideExpectedHashrate": null,
// Override the profit timeframe, can be Live, Day or null.
"OverrideProfitTimeframe": null,
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, MinerRocksApi, CryptoknightCCApi) or null.
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, CryptunitApi, MinerRocksApi, CryptoknightCCApi) or null.
"OverridePoolProfitProviders": null,
// On the determination of the most profitable coin, the actual estimated profit will be multiplied by this, can be a decimal or null.
"PreferFactor": 1.0,
@@ -75,7 +75,16 @@
// Extra arguments that will be passed over to SRBMiner, can be a string or null
"SRBMinerExtraArguments": null,
// Set if you want to also start Xmr-Stak for CPU Mining
"SRBMinerUseXmrStakCPUMining": true
"SRBMinerUseXmrStakCPUMining": true,

/* JCEMINER CONFIGURATION - NEEDED IF MINER IS JCEMINER */

// Path to JceMiner executable
"JceMinerPath": "JceMiner/jce_cn_gpu_miner64.exe",
// Path to JceMiner config (can be null <- then auto configuration will be used)
"JceMinerConfig": "JceMiner/config_heavy.txt",
// Extra arguments for JceMiner
"JceMinerExtraArguments": null


}
@@ -7,7 +7,7 @@
"TickerSymbol": "LOKI",
// Mining algorithm of coin, can be CryptonightV7, CryptonightHeavy, CryptonightLite, CryptonightBittube, CryptonightStellite, CryptonightHaven or CryptonightMasari
"Algorithm": "CryptonightHeavy",
// Used Miner, can be XmrStak, CastXmr or SRBMiner (Recommended: XmrStak)
// Used Miner, can be XmrStak, CastXmr, SRBMiner or JceMiner (Recommended: XmrStak)
"Miner": "XmrStak",
// Path to script that runs before the miner starts, can be null.
// For example:: Path to batch file that sets specific OverdriveN settings for this coin
@@ -21,7 +21,7 @@
"OverrideExpectedHashrate": null,
// Override the profit timeframe, can be Live, Day or null.
"OverrideProfitTimeframe": null,
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, MinerRocksApi, CryptoknightCCApi) or null.
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, CryptunitApi, MinerRocksApi, CryptoknightCCApi) or null.
"OverridePoolProfitProviders": null,
// On the determination of the most profitable coin, the actual estimated profit will be multiplied by this, can be a decimal or null.
"PreferFactor": 1.0,
@@ -75,7 +75,16 @@
// Extra arguments that will be passed over to SRBMiner, can be a string or null
"SRBMinerExtraArguments": null,
// Set if you want to also start Xmr-Stak for CPU Mining
"SRBMinerUseXmrStakCPUMining": true
"SRBMinerUseXmrStakCPUMining": true,

/* JCEMINER CONFIGURATION - NEEDED IF MINER IS JCEMINER */

// Path to JceMiner executable
"JceMinerPath": "JceMiner/jce_cn_gpu_miner64.exe",
// Path to JceMiner config (can be null <- then auto configuration will be used)
"JceMinerConfig": "JceMiner/config_heavy.txt",
// Extra arguments for JceMiner
"JceMinerExtraArguments": null


}
@@ -7,7 +7,7 @@
"TickerSymbol": "MSR",
// Mining algorithm of coin, can be CryptonightV7, CryptonightHeavy, CryptonightLite, CryptonightBittube, CryptonightStellite, CryptonightHaven or CryptonightMasari
"Algorithm": "CryptonightMasari",
// Used Miner, can be XmrStak, CastXmr or SRBMiner (Recommended: XmrStak)
// Used Miner, can be XmrStak, CastXmr, SRBMiner or JceMiner (Recommended: XmrStak)
"Miner": "XmrStak",
// Path to script that runs before the miner starts, can be null.
// For example:: Path to batch file that sets specific OverdriveN settings for this coin
@@ -21,7 +21,7 @@
"OverrideExpectedHashrate": 8420,
// Override the profit timeframe, can be Live, Day or null.
"OverrideProfitTimeframe": null,
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, MinerRocksApi, CryptoknightCCApi) or null.
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, CryptunitApi, MinerRocksApi, CryptoknightCCApi) or null.
"OverridePoolProfitProviders": null,
// On the determination of the most profitable coin, the actual estimated profit will be multiplied by this, can be a decimal or null.
"PreferFactor": 1.0,
@@ -75,7 +75,16 @@
// Extra arguments that will be passed over to SRBMiner, can be a string or null
"SRBMinerExtraArguments": null,
// Set if you want to also start Xmr-Stak for CPU Mining
"SRBMinerUseXmrStakCPUMining": true
"SRBMinerUseXmrStakCPUMining": true,

/* JCEMINER CONFIGURATION - NEEDED IF MINER IS JCEMINER */

// Path to JceMiner executable
"JceMinerPath": "JceMiner/jce_cn_gpu_miner64.exe",
// Path to JceMiner config (can be null <- then auto configuration will be used)
"JceMinerConfig": "JceMiner/config_v7.txt",
// Extra arguments for JceMiner
"JceMinerExtraArguments": null


}
@@ -7,7 +7,7 @@
"TickerSymbol": "XMR",
// Mining algorithm of coin, can be CryptonightV7, CryptonightHeavy, CryptonightLite, CryptonightBittube, CryptonightStellite, CryptonightHaven or CryptonightMasari
"Algorithm": "CryptonightV7",
// Used Miner, can be XmrStak, CastXmr or SRBMiner (Recommended: XmrStak)
// Used Miner, can be XmrStak, CastXmr, SRBMiner or JceMiner (Recommended: XmrStak)
"Miner": "XmrStak",
// Path to script that runs before the miner starts, can be null.
// For example:: Path to batch file that sets specific OverdriveN settings for this coin
@@ -21,7 +21,7 @@
"OverrideExpectedHashrate": null,
// Override the profit timeframe, can be Live, Day or null.
"OverrideProfitTimeframe": null,
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, MinerRocksApi, CryptoknightCCApi) or null.
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, CryptunitApi, MinerRocksApi, CryptoknightCCApi) or null.
"OverridePoolProfitProviders": null,
// On the determination of the most profitable coin, the actual estimated profit will be multiplied by this, can be a decimal or null.
"PreferFactor": 1.0,
@@ -75,6 +75,15 @@
// Extra arguments that will be passed over to SRBMiner, can be a string or null
"SRBMinerExtraArguments": null,
// Set if you want to also start Xmr-Stak for CPU Mining
"SRBMinerUseXmrStakCPUMining": true
"SRBMinerUseXmrStakCPUMining": true,

/* JCEMINER CONFIGURATION - NEEDED IF MINER IS JCEMINER */

// Path to JceMiner executable
"JceMinerPath": "JceMiner/jce_cn_gpu_miner64.exe",
// Path to JceMiner config (can be null <- then auto configuration will be used)
"JceMinerConfig": "JceMiner/config_v7.txt",
// Extra arguments for JceMiner
"JceMinerExtraArguments": null

}
@@ -7,7 +7,7 @@
"TickerSymbol": "MoneroOcean",
// Mining algorithm of coin, can be CryptonightV7, CryptonightHeavy, CryptonightLite, CryptonightBittube, CryptonightStellite, CryptonightHaven or CryptonightMasari
"Algorithm": "CryptonightV7",
// Used Miner, can be XmrStak, CastXmr or SRBMiner (Recommended: XmrStak)
// Used Miner, can be XmrStak, CastXmr, SRBMiner or JceMiner (Recommended: XmrStak)
"Miner": "XmrStak",
// Path to script that runs before the miner starts, can be null.
// For example:: Path to batch file that sets specific OverdriveN settings for this coin
@@ -21,7 +21,7 @@
"OverrideExpectedHashrate": null,
// Override the profit timeframe, can be Live, Day or null.
"OverrideProfitTimeframe": null,
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, MinerRocksApi, CryptoknightCCApi) or null.
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, CryptunitApi, MinerRocksApi, CryptoknightCCApi) or null.
"OverridePoolProfitProviders": "MoneroOceanApi",
// On the determination of the most profitable coin, the actual estimated profit will be multiplied by this, can be a decimal or null.
"PreferFactor": 1.05,
@@ -75,6 +75,15 @@
// Extra arguments that will be passed over to SRBMiner, can be a string or null
"SRBMinerExtraArguments": null,
// Set if you want to also start Xmr-Stak for CPU Mining
"SRBMinerUseXmrStakCPUMining": true
"SRBMinerUseXmrStakCPUMining": true,

/* JCEMINER CONFIGURATION - NEEDED IF MINER IS JCEMINER */

// Path to JceMiner executable
"JceMinerPath": "JceMiner/jce_cn_gpu_miner64.exe",
// Path to JceMiner config (can be null <- then auto configuration will be used)
"JceMinerConfig": "JceMiner/config_v7.txt",
// Extra arguments for JceMiner
"JceMinerExtraArguments": null

}
@@ -0,0 +1,89 @@
{
/* GENERAL CONFIGURATION - ALWAYS NEEDED */

// Displayed name, can be anything.
"DisplayName": "Quantum",
// Ticker symbol on minecryptonight.net, needed to get profit data
"TickerSymbol": "QRL",
// Mining algorithm of coin, can be CryptonightV7, CryptonightHeavy, CryptonightLite, CryptonightBittube, CryptonightStellite, CryptonightHaven or CryptonightMasari
"Algorithm": "CryptonightV7",
// Used Miner, can be XmrStak, CastXmr, SRBMiner or JceMiner (Recommended: XmrStak)
"Miner": "XmrStak",
// Path to script that runs before the miner starts, can be null.
// For example:: Path to batch file that sets specific OverdriveN settings for this coin
"PrepareScript": null,
// Enables or disables this coin, can be true or false (default: true)
"Enabled": true,

/* OVERRIDE SETTINGS - NOT NEEDED */

// Override the expected hashrate, can be a number or null.
"OverrideExpectedHashrate": null,
// Override the profit timeframe, can be Live, Day or null.
"OverrideProfitTimeframe": null,
// Override the profit providers, can be a comma seperated ordered string (example: MineCryptonightApi, CryptunitApi, MinerRocksApi, CryptoknightCCApi) or null.
"OverridePoolProfitProviders": null,
// On the determination of the most profitable coin, the actual estimated profit will be multiplied by this, can be a decimal or null.
"PreferFactor": 1.0,

/* AUTO POOL CONFIGURATION - NEEDED FOR CASTXMR OR IF POOL CONFIG FILE IS NOT DIRECTLY SET */

"PoolAddress": "qrl.miner.rocks:5555",
"PoolWalletAddress": "0x01d47cc4f56ec05e735b316742459eeef08d5867",
"PoolPassword": "x",
"PoolUseTls": false,
"PoolTlsFingerprint": "",
"PoolWeight": 1,
"PoolRigId": "",

/* XMR-STAK CONFIGURATION - NEEDED IF MINER IS XMRSTAK OR FOR CPU MINING*/

// Path to Xmr-Stak executable
"XmrStakPath": "$PlatformSpecificXmrStakPath",
// Path to Xmr-Stak config file
"ConfigPath": "XmrStak/config.txt",
// Port of the Xmr-Stak Json API, should match the port in the config file of Xmr-Stak.
"XmrStakApiPort": 4000,
// Path to Xmr-Stak cpu config file, can be null.
"CpuPath": "XmrStak/cpu_v7.txt",
// Path to Xmr-Stak amd gpu config file, can be null.
"AmdPath": "XmrStak/amd_v7.txt",
// Path to Xmr-Stak nvidea gpu config file, can be null.
"NvidiaPath": null,
// Set the path to Xmr-Stak pool config file directly (can be null, if you use AUTO POOL CONFIGURATION)
"PoolsPath": null,

/* CASTXMR CONFIGURATION - NEEDED IF MINER IS CASTXMR */

// Path to CastXmr executable
"CastXmrPath": "CastXmr/cast_xmr-vega.exe",
// Extra arguments for setting the GPUs or tuning
"CastXmrExtraArguments": "-G 0,1",
// Set if you want to also start Xmr-Stak for CPU Mining
"CastXmrUseXmrStakCPUMining": true,

/* SRBMINER CONFIGURATION - NEEDED IF MINER IS SRBMINER*/

// Path to SRBMiner executable
"SRBMinerPath": "SRBMiner/SRBMiner-CN.exe",
// Path to SRBMiner config file
"SRBMinerConfigPath": "SRBMiner/config_v7.txt",
// Port of the SRBMiner REST API, should match the port in the config file of SRBMiner.
"SRBMinerApiPort": 21555,
// Set the path to SRBMiner pool config file directly (can be null, if you use AUTO POOL CONFIGURATION)
"SRBMinerPoolsPath": null,
// Extra arguments that will be passed over to SRBMiner, can be a string or null
"SRBMinerExtraArguments": null,
// Set if you want to also start Xmr-Stak for CPU Mining
"SRBMinerUseXmrStakCPUMining": true,

/* JCEMINER CONFIGURATION - NEEDED IF MINER IS JCEMINER */

// Path to JceMiner executable
"JceMinerPath": "JceMiner/jce_cn_gpu_miner64.exe",
// Path to JceMiner config (can be null <- then auto configuration will be used)
"JceMinerConfig": "JceMiner/config_v7.txt",
// Extra arguments for JceMiner
"JceMinerExtraArguments": null

}

0 comments on commit e68149f

Please sign in to comment.
You can’t perform that action at this time.