Miner Control - Утилита для расчета прибыльности майнинга

Тема в разделе "Программы", создана пользователем dead_mazay, 29 мар 2018.

  1. dead_mazay

    dead_mazay новичок

    Утилита для расчета прибыльности майнинга монет на пулах и отображения API-данных с пулов в удобной форме, такие как по балансы монет, скорости воркеров, сборы пулов, информация по биржевым курсам и динамике.



    Miner Control расчета прибыльности майнинга



    Работает со следующими группами пулов:

    1) данные прибыльности предоставляет сам пул: “Nicehash”, “Nanopool”, "все YIIMP и YAAMP-подобные", "Coin-Miners", “MiningPoolHub”.

    2) расчет прибыльности происходит на базе данных с портала Whattomine и работает для следующих пулов “CoinMine.pl”, ”Suprnova.cc”,"Miningfield.com, "AikaPool", "Luckpool", "Ethermine”&”Flypool”, “TheBlockFactory”, “GiveMeCoins”, “Dwarfpool”, “Coinotron”.
    3) расчет прибыльности на базе Whattomine для двойной добычи монет “DualMining” для майнеров Claymore для любых пулов.

    MС работает с любыми комбинациями пулов и на любом оборудовании (AMD, Nvidia, CPU) из-под Windows.

    В файле базовой конфигурации меняется Account либо Wallet на свои, также ApiKey и UserID, если нужны данные по балансу и скоростям.

    Конфигурация состоит из нескольких разделов:

    раздел "general" - глобальные настройки для приложения

    • "power": 0.00, //Стоимость КВт/ч в используемой валюте
    • "exchange": 2000, //Примерная цена Bitcoin в используемой валюте для расчета затрат на электроэнергию (только если не удается загрузить данные по курсу)
    • "currencycode": "USD", //аббревиатура используемой валюты (USD, EUR, RUB), общий баланс и затраты пересчитываются в соответствии с указанной валютой
    • "startdelay":10, //Задержка запуска майнера в секундах для режима автостарта, для получения данных с пулов (по умолчанию 0)
    • "mintime": 1, //Минимально допустимое время для работы майнера в минутах после переключения алгоритма
    • "maxtime": 30, //Максимально допустимое время для работы майнера в минутах после переключения алгоритма и до режима перезапуска
    • "switchtime": 1, //Время в минутах, в течение которого текущая позиция не должна быть лучшей по прибыльности, чтобы произошло переключение на более топовую.
    • "delay": 3, // Задержка запуска майнера в секундах после переключения. Быстрый запуск/остановка майнера могут приводить к нестабильности видеодрайверов.
    • "exittime": 0, //Время в минутах, после которого приложение будет закрыто. Значения меньше 1 мин, будут проигнорированы.
    • "apitimer":5, //периодичность запросов к пулам.
    • "deadtime": 1, //Время в минутах, в течение которого у позиции будет сохраняться статус “dead” (невозможность майнинга на пуле)
    • "statwindow": 60, //Время в минутах для сбора и анализа статистики (по умолчанию 60 мин)).
    • "minprice": "0BTC", // Абсолютная доходность в BTC или в пр. фиатной валюте, с которой запускается майнинг. Используйте добавку "BTC" если желаете использовать BTC, или без добавки для свой валюты.
    • // По умолчанию 0, если учитываются затраты на электричество, майнинг не будет запускаться при отрицательных значениях заработка.
    • "minebyaverage": true,// Задействует расчет доходности по средним значениям, вычисляемым по временному диапазону из “statwindow”. Снижает количество переключений из-за колебаний доходности.
    • "minprofit": 1.1, //Допуск на лучшую доходность. Лучшая позиция будет в статусе ожидания “pending”, пока ее доходность не превысит доходность текущей позиции в указанное количество раз.
    • "dynamicswitching": true, // Уменьшает время переключения, пропорционально величине доходности лучшей позиции над текущей.
    • "dynamicswitchpower": 2, // dynamicswitchpower, dynamicswitchpivot, dynamicswitchoffset Переменные для расчета динамического переключения (по умолчанию 2, 1.05, none)
    • // Dynamic switchtime = ("switchtime" / ((best entry price / currently running price) ^ "dynamicswitchpower")) + "dynamicswitchingoffset"
    • //Где"dynamicswitchoffset" по умолчанию: "switchtime" - ("switchtime" * (1/"dynamicswitchpivot") ^ "dynamicswitchpower)).
    • "ignoreoutliers": false, // игнорирует алгоритмы с завышенной доходностью (outlier), исходя из анализа “statwindow” и локальных переменных, не работает при активном "minebyaverage".
    • "iqrmultiplier": 2.2, //позиция получает статус outlier если доходность выше средней в указанное число раз.
    • "showhistory": true, // Активирует вкладку «History» с графиками
    • "logerrors": false, //Пишет ошибки в файл 'error.log'
    • "logactivity": true, //Пишет все действия приложения в файл 'activity.log'
    • "gridsortmode": 2, // режим сортировки позиций 0 = без сортировки, 1 = только в режиме «авто», 2 = по возрастанию после обновления данных (по умолчанию 1)
    • "minerkillmode": 1, //режим остановки майнера 0 = остановка единичного процесса, 1 = остановка дерева процессов (по умолчанию 1)
    • "traymode": 0, //режим окна 0 = полнооконный, 1 = сворачивать в трей и прятать майнер после запуска, 2 = сворачивать в трей и запускать майнер в свернутом окне.
    • "donationfrequency ": 60, //Частота в минутах для режима «доната» (по умолчанию 60 мин).
    • "checkconnection":false, //Пингуется google.com. Если нет соединения, ожидает, не запуская майнер.
    • "usewindow": true, //если активен, запускает майнер в отдельном окне, иначе запускается во вкладке консоли.
    • "coloring":true, //добавляет цветовое оформление для динамики и статусов
    • "showinactive":true, //отображение отключенных конфиге позиций для информации.
    • "minidleseconds":60, //время простоя в секундах для запуска майнинга в простое
    • "wtmurl": "http://whattomine.com/coins.json", // ссылка на данные Whattomine, можно изменить через анонимайзер,
    • "avgspeedticks":10, //число тиков для учета средних скоростей
    • "dynoffset":10, //допуск для изменения динамики и получения статусов “pumping”/”dumping”
    • "remotesend": false, отправка данных консоли удаленному отправителю (по умолчанию false)
    • "remotereceive": false, отправка данных консоли удаленному получателю (по умолчанию false)
    • "minerfolderpath": "MinerControl" // расположение майнеров 3 варианта:
    • // - абсолютный путь к папке с майнерами, например, "C:\\Miners\\Nvidia";
    • // - Значение "MinerControl". Подставляется путь до "MinerControl.exe";
    • // - Пусто. Относительный путь.
    • // Структура пути к майнерам: MinerFolderPath \APARAM1 \ APARAM2
    • "genworker": "1070", // генеральный воркер. Используется, если если не прописан на уровне пула.
    • "hidecolumngr1": false, //прячет группу столбцов "Price", "PowerCost", "Fees"
    • "hidecolumngr2": false, // прячет группу столбцов "RejectSpeed", "TopAvgSp", "AcSpWrk", "MU", "PoolFee"
    //следующие параметры влияют на отображение соответствующего столбика
    • "service" : true,
    • "algo" : true,
    • "coin" : true,
    • "exname": true,
    • "remark": true,
    • "dynamics" : true,
    • "hashrate" : true,
    • "acspwrk" : true,
    • "topavgsp" : true,
    • "mu" : true,
    • "poolfee" : true,
    • "price" : true,
    • "earn" : true,
    • "fees" : true,
    • "powercost" : true,
    • "netearn" : true,
    • "netavgearn" : true,
    • "netcurrency" : true,
    • "exrate" : true,
    • "balancebtc" : true,
    • "balancecoin" : true,
    • "pendingcoin" : true,
    • "acceptspeed" : true,
    • "rejectspeed": true,
    • "updated":true,
    • "workers":true,
    • // параметры для установки габаритов главного окна в пикселах
    • "width": 1684,
    • "height": 616,



    раздел "algorithms", в котором прописаны используемые алгоритмы, скорость оборудования, расход электричества, путь к майнеру и параметры его запуска.

    • {"name":"lyra2v2"//имя алгоритма для увязки с пулом ,
    • "display":"Lyra2REv2"//отображаемое имя в столбце "Algo",
    • "hashrate":39000// скорость оборудования на алгоритме в KH/s,
    • "mu":"kH/s"//единицы скорости,
    • "power":50// потребляемая мощность в ваттах,
    • "aparam1":"Miners\\Nvidia\\Ccminer\\Nanashi"//путь к папке с майнером,
    • "aparam2":"ccminer_nanashi.exe"//исп. файл майнера,
    • "aparam3":"-r 2 -a lyra2v2 -o"// параметры запуска},
    сервисный раздел на каждый пул, где прописывается параметры монеты/алгоритма, адрес пула, порта, аккаунт/кошелек, воркер, пароль.
    • },"MiningPoolHub"://имя пула жестко закодировано, менять нельзя
    • {//параметры для работы с пулом
    • "poolenabled":true,// включает/отключает пул целиком
    • "account":"YOUR_ACCOUNT",//имя учетной записи на пуле
    • "worker":"YOUR POOL WORKER NAME",//имя воркера на пуле
    • "worker":"1070",//название воркера на пуле
    • "apikey":"YOUR_APIKEY",//ключ API на пуле для получения персональной статистики
    • "userid":"YOUR_USERID",//ключ USER на пуле для получения персональной статистики
    • "getpooldata":true,// включает/отключает работу с API пула (баланс, общ. скорость, скорость воркера) совместно
    • "nobalance":false,//включает/отключает баланс на пуле
    • "nospeed":false,//включает/отключает принятую скорость на пуле
    • "nospeedworker":false,//включает/отключает принятую скорость по каждому воркеру
    • "autofee":true,//включает/отключает загрузку размера сборов пула
    • "weight":1.0,//приоритет пула по сравнении с другими из конфигурации
    • "minprofit":1,//Допуск на лучшую доходность пула. Лучший пул будет в статусе ожидания “pending”, пока его доходность не превысит доходность текущего пула в указанное количество раз.
    • "btcfee":0.2,//сбор пула за конвертацию в BTC
    • "sparam1":"hub.miningpoolhub.com",//подменный параметр, который заменяет все "SPARAM1"
    • "sparam2":"-p 123",//подменный параметр, который заменяет все "SPARAM2"
    • "sparam3":"stratum+tcp://",//подменный параметр, который заменяет все "SPARAM3"

    • "algos"://параметры конкретных монет на пуле [

    • {"active":true,//включает/отключает конкретную позицию
    • "cname":"zcash",//имя монеты
    • "algo":"equihash",//алгоритм монеты
    • "tag":"zec",//ярлык монеты
    • "wallet":"YOU_COIN_WALLET",//если майнинг идет на кошелек
    • "exchange":"ExchangeName",//название биржи с которого берется курс обмена
    • "exrate":0.001//курс, введенный вручную
    • "price":0.02//доходность введенная вручную
    • "cweight":1,//множитель доходности монеты (можно корректировать приоритет или масштаб хешрейта)
    • "fee":0.9,//сбор пула
    • "priceid":185,//для пулов с данными Whattomine, если монеты нет в основном списке портала, можно загрузить отдельно.
    • //PriceId соответсвует номеру монеты на WTM (тут 185-Zencash) http://whattomine.com/coins/185.json
    • "arguments":"_APARAM3_ --server _SPARAM1_ --port 20570 --user _ACCOUNT_._WORKER_ --pass x",//аргументы запуска конкретной монеты
    • "usewindow": true//использовать ли отдельное окно или консоль
    • },

    Для строк монет могут использоваться специальные подменные параметры
    • _STRATUM_ меняется на "stratum" из шапки пула
    • _SPARAM1_ меняется на "sparam1" из шапки пула
    • _SPARAM2_ меняется на "sparam2" из шапки пула
    • _SPARAM3_ меняется на "sparam2" из шапки пула
    • _ACCOUNT_ меняется на "account" из шапки пула
    • _WORKER_ меняется на "worker" из шапки пула, при отсутствии его на "genworker" из конфига
    • _APARAM1_ меняется на "aparam1" из конфига алгоритмов
    • _APARAM2_ меняется на "aparam2" из конфига алгоритмов
    • _APARAM3_ меняется на "aparam2" из конфига алгоритмов
    • _GPU_ меняется на "activegpu" из конфига настроек
    • _ALGO_ меняется на "algo" из строки монеты
    • _WALLET_ меняется на "wallet" из строки монеты
    • _TAG_ меняется на "tag" из строки монеты
    • _COINNAME_ меняется на "coin" из строки монеты
    • _TCP_ меняюемся на "stratum+tcp://
    • _SSL_ меняется на "stratum+tls://
    Пример {"active": true,"wallet": "BTC","algo": "Lbry","tag": "LBRY","poolscale": "M","fee": 1.0,"cweight": 1.0,"folder": "_APARAM1_","command": "_APARAM2_","arguments": "_APARAM3_ _TCP__STRATUM_:3334 -u _WALLET_ -p _WORKER_,c=_TAG_","usewindow": true,"created": "13.03.2018"},


    Кошельки могут быть, по желанию, вынесены в отдельный раздел
    • {"tag":"xlr","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"music","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"ubiq","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"zec","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"zcl","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"hush","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"zen","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"eth","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"etc","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"exp","wallet":"YOUR_WALLET","exchange":"ExchangeName"},
    • {"tag":"btc","wallet":"YOUR_WALLET","exchange":"ExchangeName"}
    тогда на уровне каждой монеты в пуле указывается не номер кошелька, а таг монеты

    • общая{"active":true,"wallet":"tXXXXXXXXXXXXX","cname":"zcash","tag":"zec","algo":"equihash","folder":"_APARAM1_","cweight":1,"fee":1,"command":"_APARAM2_","arguments":"_APARAM3_ --server _SPARAM2_ --port 3357 --user _ACCOUNT_._WORKER_ --pass x","usewindow": true},
    • подстановка кошелька{"active":true,"wallet":"zec","cname":"zcash","tag":"zec","algo":"equihash","folder":"_APARAM1_","cweight":1,"fee":1,"command":"_APARAM2_","arguments":"_APARAM3_ --server _SPARAM2_ --port 3357 --user _ACCOUNT_._WORKER_ --pass x","usewindow": true},
    При запуске данные разделов комбинируются, и в консоли вы видите аналог .bat файла, как если бы запустили его из командной строки.
    При наличии более прибыльной монеты, предыдущий процесс завершается и запускается новый для наиболее прибыльного алгоритма.

    Основное правило для начала работы, во вкладке "консоль" вы должны увидеть строку с параметрами, аналогичными запуску обычного bat-файла.

    Если чего-то не хватает - проверять файл конфигурации на полноту данных (см. ссылки проверка конфига на ошибки)

    Ссылки на скачивание:
    Скрытое содержимое:
    **Скрытое содержимое: Для просмотра Вам необходимо минимум 1 сообщений на форуме.**
    обсуждение на bitcointalk

    https://bitcointalk.org/index.php?topic=769239.msg8669925#msg8669925

    проверка конфига на ошибки

    http://xn----8sbafhan2a8abjbbh0aefsk.xn--p1ai/CheckMinerControlConfig.html

    https://jsonlint.com

    Полезные советы:

    1) При смене майнера часто происходят вылеты драйвера из-за повышения частоты памяти на 200мгц, решается так:
    качаем nvidiaProfileInspector, например
    Скрытое содержимое:
    **Скрытое содержимое: Для просмотра Вам необходимо минимум 1 сообщений на форуме.**


    Находим строчку в 5 разделе "common": CUDA_FORCE_P2_STATE по дефолту ON, меняем на OFF.

    Теперь дефолтные частоты всегда будут +200мгц, не забываем скорректировать настройки программ для разгона.

    --------------------------------------------------------------------------------------------------------------------------------
    2) На фермах с большим числом карт при перезапуске майнера не все карты могут стартовать успешно.
    Пробуем параметр --cuda-schedule 0 в аргументах майнера.
    --------------------------------------------------------------------------------------------------------------------------------

    3) При нехватке каких-либо .dll при запуске майнеров необходимо установить Visual C++ Runtime
    Скачать с оф сайта
    Скрытое содержимое:
    **Скрытое содержимое: Для просмотра Вам необходимо минимум 1 сообщений на форуме.**