Skip to content
Extensible profit switcher for Cryptonight coins and algorithms
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
CastXmr Update Cast XMR to 1.50 Oct 15, 2018
Coins Add profit sorting setting Oct 24, 2018
Enums Add profit sorting setting Oct 24, 2018
Factories Added HeroMinersApi Oct 24, 2018
Images
JceMiner Update configs Oct 17, 2018
Mineables Fix configs & Custom CastXMR port support Oct 16, 2018
Miners Fix SrbMiner Api Oct 17, 2018
Models Add profit sorting setting Oct 24, 2018
NicehashAlgorithms Fix debug config Oct 17, 2018
ProfitPoviders Added HeroMinersApi Oct 24, 2018
ProfitSwitchingStrategies Refactoring Oct 15, 2018
Properties Support linux Jun 19, 2018
SRBMiner Update configs Oct 17, 2018
XmrStak Update configs Oct 17, 2018
.gitattributes Initial commit Jun 4, 2018
.gitignore Initial commit Jun 4, 2018
CREDITS.md Version 6.0.0 Oct 24, 2018
CryptonightProfitSwitcher.csproj Version 6.0.0 Oct 24, 2018
CryptonightProfitSwitcher.sln Support linux Jun 19, 2018
Helpers.cs Refactoring Oct 15, 2018
LICENSE.md Initial commit Jun 4, 2018
PULL_REQUEST_TEMPLATE.md Create PULL_REQUEST_TEMPLATE.md Jul 2, 2018
PostBuild.ps1 Support linux Jun 19, 2018
Program.cs Version 6.0.0 Oct 24, 2018
PublishUbuntu.bat Fix build BATs Oct 17, 2018
PublishWindows.bat Fix build BATs Oct 17, 2018
README.md Version 6.0.0 Oct 24, 2018
ResetScript.bat Initial commit Jun 4, 2018
Settings.json Add profit sorting setting Oct 24, 2018
ThirdPartyLicenses.txt V. 2.5.0: More profit providers Jun 7, 2018
icon.ico Add application icon Jul 3, 2018
screenshot.png Update info Jun 20, 2018
version.txt Version 6.0.0 Oct 24, 2018

README.md

Screenshot

Cryptonight Profit Switcher is an extensible open-source .Net Core console application that helps you to always mine the most profitable coin on a pool or an algorithm on NiceHash.

It is very useful for AMD Vega GPUs because it can detect hash drops and reset the GPU(s) but it can be used with any GPU that is compatible with the miner. It is optimized for Windows but also works for Linux.

Screenshot

Screenshot

Features

  • Profit switching: Between pool mined coins and NiceHash algorithms
  • Watchdog: Compares your actual hashrate with the expected hashrate and runs a reset if certain conditions are met.
  • Reset: Restarts the miner and runs a user-defined Reset script
  • Performance: Resource friendly with 0%-CPU usage
  • Miners: Xmr-Stak (Recommended), Cast XMR, JCE Miner, SRBMiner
  • Profit data: MineCryptoNight API, CryptUnit API, miner.rocks API, cryptoknight.cc API, HeroMiners API, MoneroOcean
  • Multiple profit switching strategies: Maximize fiat profit, maximize coin reward or a combination
  • Manual mode: You can switch between automatic mode and manual mode where you select the coin / NiceHash algorithm yourself
  • Supports all algorithms: CryptonightV7, CryptonightHeavy, CryptonightLiteV7 and the variants of Bittube, Stellite, Masari and Haven Protocol
  • Supports all coins: That are mineable using the miners
  • Supports all pools: That are supported by the miners

How to use?

  1. Download the latest release of the app (Latest release)
  2. Extract it
  3. Optimize the Xmr-Stak config
    1. Go to the folder Xmr-Stak
    2. Edit the cpu_v7.txt, cpu_heavy.txt, cpu_lite.txt according to your CPU.
    3. Edit the amd_v7.txt, amd_v8.txt, amd_heavy.txt, amd_lite.txt according to your GPU.
  4. Set your pool mined coins
    1. Go to the folder Coins
    2. Delete the existing coins you don't want to mine
    3. Edit the coins you want to mine
    4. Add the additional coins you want to mine
  5. Set your NiceHash algorithms
    1. Go to the folder NicehashAlgorithms
    2. Delete the existing NiceHash algorithms you don't want to mine
    3. Edit the NiceHash algorithms you want to mine
    4. Add the additional NiceHash algorithms you want to mine
  6. Open the file Settings.json and edit the settings, most importantly edit the expected hashrates
  7. Start CryptonightProfitSwitcher.exe (Optional: As administrator)
  8. PROFIT!!!

You can also use it with Cast XMR, SRBMiner or JCE Miner. The steps are similar like above. Just look at the comments in the JSON files and you will understand how to use other miners.

Default configuration

If you download the latest release, there will be a default configuration:

  • CPU: AMD Ryzen 1600X
  • GPU: AMD Vega 64 + AMD Vega 56
  • Coins: Bittube, Graft, Haven Protocol, Loki, Masari, Stellite, AEON, MoneroOcean, Monero, BLOC.money, Conceal, Lethean
  • NiceHash: CryptonightV8, CryptonightV7, CryptonightHeavy
  • Miner: XmrStak

You have to change the default configuration for your setup, see How to use?.

How to add a pool mined coin?

  1. Open the Coins folder
  2. Copy an existing coin to the same location.
  3. Rename it and edit the JSON-File.

How to add a NiceHash algorithm?

  1. Open the NicehashAlgorithms folder
  2. Copy an existing algorithm to the same location.
  3. Rename it and edit the JSON-File.

How does what work?

Profit switching

  1. App will load pool mined coins from the Coins folder.
  2. App will load NiceHash algorithms from the NicehashAlgorithms folder.
  3. App will load settings from Settings.json.
  4. App will periodically check the profitability.
  5. App will start the most profitable mining method based on the defined strategy.

Strategy 1: MaximizeFiat (default)

Will select the coin / NiceHash algorithm that has the most profit in USD per day.

Strategy 2: MaximizeCoins

Will select the coin that has the least difficulty to mine compared to the 24h average difficulty. This strategy will ignore the price of the coin and does only work with coins that have profit data for 24h average.

Strategy 3: WeightedCoinsPrice

This strategy is a combination of the above two strategies. It will multiplicate the profit in USD per day with the relative coin difficulty and maximize this new value. This strategy will work with all coins / NiceHash algorithms because it will use 1 for the relative coin difficulty if it can't get the actual relative coin difficulty.

Reset

  1. App will terminate the miner.
  2. App will run the reset script, if it is set.
  3. App will restart itself.

Watchdog

  1. App will periodically check the actual hashrate
  2. If the actual hashrate is lower than the specified threshold in the settings, that will be an overshot.
  3. If you get more consecutive overshots than allowed (specified in the settings) than the app will perform a reset.

Credits

You can’t perform that action at this time.