Автор Тема: BOTanica - торговый бот для биржи Poloniex  (Прочитано 873 раз)

Оффлайн HealthRaw

  • Newbie
  • *
  • Сообщений: 1
  • Karma: +0/-0
    • Просмотр профиля
BOTanica - торговый бот для биржи Poloniex
« : Ноябрь 16, 2017, 04:45:20 am »
BOTanica - торговый бот

Botanica – робот для автоматизированной торговли на бирже Poloniex с использованием api-протокола. Применяет стратегию коротких позиций с заданной ставкой прибыли (или не очень коротких, в зависимости от настроек и Вашей жажды наживы ;) ) и усреднением при нисходящем тренде.

Что умеет бот в текущей версии:
  • торговать валютными парами BTC_XXX, где ХХХ валюты из вкладки – “ВTC” панели MARKETS, веб-интерфейса биржи poloniex.
  • самостоятельно выбирать, из заданного пользователем списка, валютные пары для торговли, в зависимости от состояния рынка. Так же возможно строгое задание пар.
  • одновременная торговля несколькими парами (пока количество неограниченное)
  • входить в торговлю (выставлять ордера на покупку) в ручном или автоматическом режиме, с использованием алгоритмов анализа текущего состояния рынка (подробное описание алгоритмов ниже)
  • обрабатывать подвисания и ошибки многострадальной биржи Poloniex.
  • подавать звуковое оповещение о совершенных торговых операциях.

Процесс торговли происходит по следующему алгоритму:
  • Выставление ордера на покупку, по лучшей цене в стакане.
  • В случае перебивания курса вашей ставки, чужим ордером, бот автоматически изменит цену на лучшую, до тех пор пока ставка не будет куплена.
  • После исполнения ордера на покупку будет создан ордер на продажу с заданным в настройках процентом прибыли, а так же орера подстраховки (на покупку) для дальнейшего усреднения, с шагом и коэффициентом увеличения (мартингейлом), так же заданными в настройках.
  • При падении курса и исполнении ставок подстраховки, ордер на продажу будет изменяться с учетом купленных ордеров. Так же будут добавлены новые ставки подстраховки, если не достигнут предел падения курса указанный в настройках.
  • При исполнении ордера на продажу (фиксирование прибыли) удаляются все неисполненные ставки подстраховки этой валюты и цикл начнется заново, с той же или с другой валютной парой, в зависимости от состояния рынка и пользовательских установок бота.

Описание настроек и интерфейса программы:

  • «Размер ставок (BTC)». Сумма первой ставки на покупку при вхождении в торги. Если параметр (5) - «Мартингейл» равен 0, все последующие ставки подстраховки так же будут равны размеру первой ставки.
  • «Шаг ставок». Шаг цены при выставлении ставок подстраховки. Например: если первый ордер вхождения условной валюты был куплен по курсу 0.1 btc, при шаге ставок - 0.5%, значит ставки подстраховки будут выставлены по курсам: (1)0.0995; (2)0.099; (3)0.0985; (4)0.098;…
  • «Количество ставок». Максимальное количество ставок подстраховки, которое будет выставлено ботом при падении курса. Например: при кол-ве ставок - 39 и курсе ордера вхождения - 0.1, ордера подстраховки будут иметь следующие курсы: (1)0.0995; (2)0.099; (3)0.0985; (4)0.098,… (39)0,0805. При указании этого параметра нужно учитывать размер вашего депозита.
  • «Доходность (Коэффициент)». (Не путать с процентом, коэф. 0.003 = 0.3%, 0,01 = 1% и т.д.) Коэффициент прибыли для выставления ордера на продажу, учитывающий комиссию биржи. Например, при значении этого параметра - 0.002 и размере ставки вхождения 1btc, после повышения курса до уровня курса ордера продажи мы получим 0.002btc чистой прибыли, т.е. 0.2%. Если до выхода из торгов по данной валютной паре были так же куплены ставки подстраховки, то прибыль увеличивается пропорционально их количеству.
  • «Мартингейл. (Коэффициент как и доходность)» увеличение размера ставок подстраховки. Мартингейл - 0.1 означает что размер каждой последующей ставки будет увеличен на 10% от размера ставки вхождения. Размер ставок подстраховки: (1)0.1; (2)0.11; (3)0.12;….
  • «Кол-во валютных пар». Количество пар по которым бот будет осуществлять торговлю.
  • «Только продажа». При установленном флажке данного параметра, бот будет только распродавать текущие позиции (если они имеются). Новые ордера на вхождение выставляться не будут.
  • «Продолжить с». На этом параметре хотел бы заострить особое внимание. Все свои действия бот синхронизирует с торговой историей Вашего профиля, и записывает ее в свою внутреннюю базу данных. И если его работа была остановлена вручную или прервалась по иным причинам (завис компьютер, пропал интернет и т.д.), то после возобновления работы компьютера можно продолжить работу бота с того же места. Для этого нужно запустить бота и указать ему точку торговой истории с которой следует продолжать работу. Т.е. устанавливаем флажок этого параметра, после чего станет доступно поле для ввода даты и времени, вводим дату и время в соответствии с указанным форматом (пример 2017-06-01 04:15:56) ПЕРВОЙ НЕОБРАБОТАННОЙ БОТОМ ОПЕРАЦИИ после прерывания (брать из Trade History веб-интерфейса в ЛК poloniex). Если за это время в Trade History не появилось новых записей, укажите либо текущее время по UTC (серверное время poloniex), либо время последней обработанной ботом операции с добавлением 1 секунды (второй вариант надежней).
  • «Валютные пары». Список разрешенных для торговли валютных пар. К сожалению, пока нет возможности редактировать этот список через стандартный интерфейс программы. Но есть возможность его редактирования в файле настроек - Settings.conf (Раздел “Pairs” ). Подробней о добавлении пар в разделе «установка бота». Если число пар в списке равно или меньше параметра (6) «Количество валютных пар» торговля будет производится исключительно указанными парами. В обратном случае, бот будет сам выбирать пары в зависимости от текущих объемов торгов валютных пар, о чем писалось выше.
  • Поле для отображения времени торговых циклов и аналитической информации по валютным парам.
  • Текущие выставленные ордера
  • Торговая история (Trade History)
  • Журнал выполненных операций и обработанных событий, в том числе тут будут показываться безответные запросы и ошибки биржи во время ее зависаний.
  • Кнопка запуска и остановки бота
  • Флажок отображения полей с API ключами.

Если перевести представленные на скриншоте параметры с коэффициентами на проценты, то они будут выглядеть так:
Доходность (коэф.) 0.004 – 0.4%
Мартингейл (коэф.) 0.05 – 5%

Описание алгоритма автоматического выбора валютных пар:

Валютная пара из разрешенного списка с наибольшим объемом торгов будет выставляться первой при условии что:

  • а) Можно выставить ордер на вхождение с лучшей ценой ниже любого из индикаторов EMA(20) или EMA(30)/li]
    • б) В разрешенном списке нет пары удовлетворяющих условию а). В этом случае будет выбрана валюта у которой текущая цена находится наиболее ближе к индикаторам EMA(20) или EMA(30).

    Если описать это проще в двух словах, бот старается избегать закупок валют на пике цен и выбирает те валюты, у которых прогнозируется динамика на повышение.


    Установка бота:
    • Прежде всего создаем API ключи с правами на торговлю (Enable Trading), в соответствующем разделе личного кабинета Poloniex. https://poloniex.com/apiKeys
    • Распаковываем архив.
    • Перед запуском программы редактируем через любой текстовый редактор файл Settings.conf, список разрешенных для торговли валют, раздел «Pairs», по примеру заданному в исходном файле. Пример: "Pairs":["BTC_ETH","BTC_XMR","BTC_DASH"]. При запуске программы эти пары должны отобразится в окне (9)-«Валютные пары» интерфейса программы.
    • Запускаем программу, файл BOTanica.exe, устанавливаем желаемые настройки для торговли (см. раздел «Описание настроек и интерфейса программы»)
    • Вписываем APIKey и SecretKey в поля с соответствующими названиями.
    • Запускаем торговлю кнопкой «START»

    Для тестирования и предварительного ознакомления с возможностями программы существует свободно-распространяемая версия с ограничениями:

    • размер ставки, не более 0.0005btc (в том числе с учетом мартингейла)
    • одновременное количество торгуемых валют, не более 3
    • количество ставок подстраховки на одну валюту, не более 40

    Установки с превышением допустимых параметров программой игнорируются.

    Как получить бесплатную пробную версию бота:
    • 1.Создать API-ключ с правами на торговлю (Enable Trading) - https://poloniex.com/apiKeys
    • 2.Скачать утилиту PoloChecker - https://yadi.sk/d/-m54GTdB3PJuw9
      Вбить в нее ключи созданные в первом пункте (остальные поля заполнять не нужно, оставьте как есть). Ткнув на кнопку получить ответ от биржи. При ответе с кодом 403 и перенаправлении на форму авторизации, увы, бот работать не будет, такова политика безопасности биржи, Ваш провайдер в черном списке.
    • Ответ сервера во втором пункте скопируйте и скиньте мне на почту с просьбой выслать пробную версию, сообщив свой API-Key из первого пункта (Secret присылать не нужно), что бы я мог привязать бота к Вашему аккаунту. Моя почта - dbdevelop7@gmail.com
 

 

Яндекс.Метрика