hacktrade
hacktrade личный блог
26 июля 2014, 23:14

Фреймворк для написания торговых роботов

Хочу представить вашему вниманию фреймворк HackTrade, который позволяет быстро писать торговых роботов.

Плюсы:
  • работает в QUIK без лишних усилий
  • робот работает быстро (можно делать роботов на тиках)
  • поддерживаются графики
  • «умные заявки» избавляют от бесконечной отладки
  • можно компилировать в один файл и продавать
  • открытый исходный код

Данный продукт уже выкладывался, но ушёл на доработку и значительно усовершенствовался.

Пример торгового робота:

dofile("hacktrade.lua")

function Robot()

    feed = MarketData{
        market="QJSIM",
        ticker="SBER",
    }

    order = SmartOrder{
        account="NL0011100043",
        client="74808",
        market="QJSIM",
        ticker="SBER",
    }

    ind = Indicator{
        tag="MAVG",
    }

    while true do
        if feed.last > ind[-1] then
          order:update(feed.last, 10)
        else
          order:update(feed.last, -10)
        end
        Trade()
    end
end


Это пример реверса по скользящей средней.  Пример тривиальный, но надёжный )
Робот догоняет цену. Если снимите заявку, он выставит количество, которое не успел купить/продать. Остаётся приобрести лежак и ехать на карибы.
Попробуйте в действии )

Фреймворк с драфтом документации лежит здесь: https://github.com/hacktrade/hacktrade
Качайте, пользуйтесь. И, жду ваших отзывов. Спасибо!
9 Комментариев
  • А. Г.
    26 июля 2014, 23:21
    Не очень знаком с луа, поэтому возник вопрос: что за функция Trade()? Это встроенная функция или написанная Вами? Если Вами, то каков ее код?
      • А. Г.
        26 июля 2014, 23:52
        hacktrade,

        Спасибо, посмотрю.
  • Фибофан
    27 июля 2014, 08:15
    а под сишарп с вызовом данных по дде нету? :))
  • Vladimir
    09 октября 2014, 13:58
    СПС,hacktrade, очень полезная штука. Сделал 4 советника — все работает!!! надеюсь фрэйм будет дальше развиваться и расширяться.
    p.s. намного полезней QL (ИМХО)
  • Кашников Александр
    31 октября 2014, 18:09
    Здравствуйте. Не совсем умные заявки. При частичном исполнении не выставляются на продажу/откуп исполненные лоты — это морозилово денег и вероятной прибыли от частично исполненных лотов. При смещении заявки вручную — выставляется новая. Ручные заявки в замен выставленных роботом — фуу… не хорошо — надо снять и выставить там, где робот выставлял изначально.
    В целом, фреймворк понравился. Мало комментариев на русском.
    Спасибо.

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн