Бывают случаи, когда надо сохранять ленту сделок. Иногда без этого не обойтись. Между тем, это опасно и требует постоянного внимания.
Несколько советов о том, как делать это правильно.
1. Когда надо сохранять ленту сделок?
В общем, существует две ситуации:
1. Когда Вы по ней торгуете, и нужна глубокая история.
2. Когда Вы торгуете по нестандартным свечам и имеете неосторожную привычку менять таймфреймы иногда. Так как при смене таймфрейма, если трейды не сохраняются, нестандартные свечи начнут своё построение с нуля!
2. Как включить сохранение ленты сделок?
У каждого боевого коннектора в OsEngine есть стандартные настройки, в которых можно включить сохранение ленты сделок. Большая статья про это здесь.
В любом коннекторе за это отвечают вот эти три настройки:
Сохранять историю трейдов (Keep trade history).
Если true, то OsEngine хранит в папке OsData всю ленту сделок, которую получает.
Трейдов подгружать дней (Days to load trades).
Касается предыдущей настройки. Если Вы включили сохранение ленты сделок, то этой настройкой можно отрегулировать, за сколько дней лента будет храниться.
Функционал, который периодически очищает все хранилища с лентами сделок у робота. Если нужна лента сделок, нужно здесь указывать False.
Совет 1: Не надо делать это на нескольких OsEngine.
Собственно, из-за чего весь сыр-бор:
Товарищ из сообщества пытался понять, как ему лучше торговать, с включенным сохранением трейдов и запустил их 4ре штуки, распределив роботов между терминалами. Всего источников в каждом терминале около 100!
Так вот, если Вы сохраняете ленту сделок, несколько параллельно запущенных OsEngine ситуацию усугубят!
Всё дело в том, что вместо того, чтобы складывать ленту сделок в одну базу, OsEngine будет это делать одновременно в четыре!
Поэтому совет номер один:
Не надо сохранять ленту сделок из разных терминалов параллельно. Сделайте это в одном единственном билде.
Совет 2: Придётся перезагружать OsEngine несколько раз в неделю.
Да. В таком случае придётся перезапускать терминал, чтобы «лишняя» занятая память очищалась, и оставалось только N дней для сохранения, указанных в настройках коннектора.
Так вы сможете контролировать загрузку оперативной памяти.
В общем то и всё. Сохранять ленту сделок можно, но придётся за этим следить и соблюдать кое-какие правила, описанные в статье.
Удачных алгоритмов!
Поддержка OsEngine: https://t.me/osengine_official_support
Комментарии