Skip to content
Extensible profit switcher for CryptoNote coins and CryptoNight algorithms
Branch: master
Clone or download
Pull request Compare This branch is 23 commits ahead of cryptoprofitswitcher:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Whalien Mining 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.




  • 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
  • Profit data: MineCryptoNight API, CryptUnit API, API, 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 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
  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!!!

Default configuration

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

  • CPU: null
  • GPU: AMD Vega 64 + AMD Vega 56
  • Coins: Monero, Conceal, Lethean, Sumo, Masari
  • 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.


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


  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.


Donation Jar

**Bittube bxcUmZa4UHhc9JtM3FJCLqVoT82GrPmdY16nVozGU69YJCUGUPaBTjmCQ7oUh1m41BUMVaDR3cKvsRdEuNXsjZvL173kFRjZ5 Sign up for bittubeapp to get free 5 Tube :

**Dero dERirD3WyQi4udWH7478H66Ryqn3syEU8bywCQEu3k5ULohQRcz4uoXP12NjmN4STmEDbpHZWqa7bPRiHNFPFgTBPmcBp7YLSG96RfuR8joRx

**Ethereum 0xbcbd5c225ef2c6b0e67c886b98c37648f32aafc7

**Litecoin LZcaVuFZNQkAXXfsbQXV78QJM6Ny7NRUDi

**Monero 4Cf2TfMKhCgJ2vsM3HeBUnYe52tXrvv8X1ajjuQEMUQ8iU8kvUzCSsCEacxFhEmeb2JgPpQ5chdyw3UiTfUgapJBhHQYsP1pQmg5fanhzK

You can’t perform that action at this time.