Блог им. 3Qu

Ухожу в отпуск. Творческий.

    • 05 ноября 2020, 21:33
    • |
    • 3Qu
  • Еще
Наконец все предварительные работы по системе закончены. Тесты системы в Python на разных инструментах вы уже видели ранее. Система совершенно новая, хотя, по прежнему Lua и С++, но все переписано заново. Появилось множество потоков — все чтение данных из терминала выполняется в фоновом режиме.
Осталось только вбить саму стратегию. Поначалу хотел в стратегии использовать библиотеки Python, но нашел и оттестировал неплохие эрзацы на С++ (эрзац кофе — это не кофе, а заменитель кофе). Существенной разницы нет, и можно обойтись без Python.
Ожидаются проблемы со сделками и стаканом — на истории и минутных данных это никак не оттестируешь. С этим надо работать уже с реальными данными.
В общем, с завтрашнего дня ухожу в творческий отпуск. В январе надеюсь выйти на тест уже с мелким реалом. До того, еще тест с виртуальными сделками. Учитывая то, что многое не готово, планы не такие уж маленькие.
Топики особо писать не буду, разве, что комментарии.
★2
23 комментария
все чтение данных из терминала выполняется в фоновом режиме.
как отправляете данные из квика? через сокет или разделяемую память?

avatar
SMisSCks, данные считываются ДЛЛ по событиям Lua и далее уже обрабатываются потоками С++. Каждое событие и функция получения данных из терминала в  своем потоке, в некоторых случаях, и в нескольких — параллельно.  В итоге, потоки терминала свободны от задач системы, а вся обработка данных идет параллельно и независимо во многих потоках.  Сама система тоже работает в своем потоке (пока прототип, который имитирует деятельность)
avatar
3Qu, спасибо. тоже терминал разгружаю от работы с котировками — его дело прочитать и отправить. 
Если не секрет, как отправляется заявка? я пока реализовал самый простой вариант через чтение терминалом файл заявок с периодом 0 сек (в настройках квика)
avatar
SMisSCks, заявки пока не делал. Сейчас все подготовлено только к переносу системы с Python.
С заявками для этой системы думаю, но пока ничего определенного не решил.
avatar
SMisSCks, dll имеет прямой доступ к стэку луа, поэтому можно отправлять заявки через sendTransaction.
avatar
Денис Г., изучу, спасибо
avatar
успехов!
Хорошее для отладки время пропустишь, в январе тухляк будет. Лучше сейчас на мин. сайзе . 
 Что в отдельные потоки вывели? Всё или отдельные функции? С отдельными  потоками мороки много, всё сразу усложняется, но вещь необходимая.
avatar
Anest, сейчас не на чем.
В отдельные потоки? — практически все. Скорее, не функции, а группы функций. Скажем, обработку в каком либо классе. Но, в общем, все, кроме получения самих данных из терминала. Но там еще Луа — не разбежишься.
avatar
Anest, потоки нужны, без них никак(( вот правильно с ними работать — вот задачка…
avatar
SMisSCks, асинхронность. + мьютексы (блокирующие и неблокирующие), чтобы предотвратить чтение данных в процессе их обновления другими потоками.
avatar
да это понятно. я не блокирую при чтении, потому как доступ к памяти у читающего потока только на чтение. 
avatar
SMisSCks, это неправильно. не блокировать чтение до окончания записи можно только для простых типов — int, double,..., для массивов и структур это уже не пойдет — можно получить смесь из старого и нового.
avatar
3Qu, я читаю как раз простые типы
avatar
SMisSCks, тогда все ОК. Но если вы читаете несколько простых типов за раз, где гарантия, что некоторые из них по ходу пьесы не будут изменены?
avatar
Redline, сорри, я не использую МТ5, и не планирую. По многим причинам.
avatar
3Qu, есть планы перейти на более надежные провайдеры данных? Напрямую с биржи через тот же FAST, Plaza II etc, например

Я к чему спрашиваю. Я сейчас данные за прошлые периоды тащу из текстовых файлов, а текущие получаю через ITInvest'овский SmartCOM, от ублюдочности которого у меня уже голова болит (я тащу всю ленту принтов целиком, потому что из ленты принтов я потом смогу достать все, что угодно, а вот в обратную сторону это не работает). И поэтому все порываюсь соскочить с него на более надежные и стабильные источники, но пока не могу собраться с силами :). Если Вы соберетесь быстрее, маякните, поделитесь опытом :)
avatar
PSH, пока, пожалуй, нет. Быстродействия Квик вполне хватает для ручного интрадей. Для автомата хватает тем более.
Если у нас сделка, скажем, даже 2-3 мин, то задержка даже в 2-3 с существенной роли в прибылях/убытках не сыграет.
Ну, а для ХФТ мы рылом не вышли.))
avatar
мне это предстоит. удачи!
avatar
Чтоб ХФТ написать рабочее по стакану нужно очень быть умным. янааискть можно только в реальной торговле, тесты особо не помогут
avatar
операторы машинного доения никогда не заработают на рынке… исключение, если только они этот рынок двигают)
не знаю по теме или нет, но я все думаю как сделать свою базу данных с погрузками финансовых отчетов. Может ты сталкивался с этим, и можешь подсказать с чего начать «копать».
Я пока сделал в Google таблицах, но там как то не стабильно загружаться данные — хотелось бы в будущем сделать, что нибудь по лучше.
avatar

теги блога 3Qu

....все тэги



UPDONW