Восстановление сохраненной стратегии

Восстановление сохраненной стратегии
Atom
9/25/2014


Восстановить сохраненную стратегию можно через SettingsStorage, но туда попадают только настройки, вернуть полностью состояние не получается. То есть, если совершить сделку, сохранить, то при восстановлении сделка теряется.
Если настроить сохранение еще можно, то как восстановить сделки(Trade), по которым открыта позиция.

пример: открываем позицию - сохраняем - на следующий день восстанавливаем... позицию восстановить можно, а вот как саму сделку, чтобы выполнить пересчет параметров стратеги, тот же PnL?

Tags:


Thanks:


1 2 3  >
RomSunZ

Avatar
Date: 9/26/2014
Reply


Есть описание в хелпе в разделе про стратегии. Называется загрузка заявок и сделок.
Thanks:

Andrii

Avatar
Date: 10/1/2014
Reply


RomSunZ Go to
Есть описание в хелпе в разделе про стратегии. Называется загрузка заявок и сделок.

читал, там описывается как восстановить заявки(Order), но не все заявки заканчиваются удачно, нет метода восстановить сделки(Trade)
нет реального примера?
или ему нужно скормить сделки, которые прошли, или все можно, а он сам поймет?
Thanks:

devruss

Avatar
Date: 10/1/2014
Reply


Andrii Go to
RomSunZ Go to
Есть описание в хелпе в разделе про стратегии. Называется загрузка заявок и сделок.

читал, там описывается как восстановить заявки(Order), но не все заявки заканчиваются удачно, нет метода восстановить сделки(Trade)
нет реального примера?
или ему нужно скормить сделки, которые прошли, или все можно, а он сам поймет?


На самом деле очень важный вопрос, я для себя так решения и не нашел.

Можно даже обобщить задачу: Есть 2 робота, они торгуют один и тот же инструмент (допустим RiZ4), но на разных таймфреймах, стратегиях и т.д. Произошло отключение (обрыв связи или отключение overnight),
на момент обрыва первый был long 100 контрактов, второй 400.
1. Как после восстановления соединения восстановить правильную позицию у роботов? (именно сделки, а не ордера)
2. Как эти 2 робота поделят общую позицию по RiZ4 (500: +100 (1) +400 (2))? (т.е. как роботом понять какая часть сделок его, а какая нет)

Уверен, что те, кто силен в программировании уже реализовали данную задачу, поделитесь пожалуйста методом решения

Thanks:

RomSunZ

Avatar
Date: 10/1/2014
Reply


Ну так сохраняйте сделки/ордера во временный файл или в коллекцию после их появления с идентификатором для каждой стратегии, а потом восстанавливайте их от туда.
Thanks:

Andrii

Avatar
Date: 10/1/2014
Reply


RomSunZ Go to
Ну так сохраняйте сделки/ордера во временный файл или в коллекцию после их появления с идентификатором для каждой стратегии, а потом восстанавливайте их от туда.

каким образом восстанавливать сделки?
или даже как правильно все реализовать? пример есть?
Thanks:

RomSunZ

Avatar
Date: 10/2/2014
Reply


Поищите здесь на форуме были примеры почти готовой обертки восстановления и сохранения стратегии где-то год назад или около того
Thanks:

Andrii

Avatar
Date: 10/2/2014
Reply


RomSunZ Go to
Поищите здесь на форуме были примеры почти готовой обертки восстановления и сохранения стратегии где-то год назад или около того


восстановить стратегию нахожу, но мне бы ее сделки

нахожу
Code
this.StatisticManager.AddNewOrder();
this.ProcessNewOrders();


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

на текущий момент this.ProcessNewOrders(); не отрабатывает
Thanks:

Andrii

Avatar
Date: 10/2/2014
Reply


так же есть AttachOrder, но как будет корректно не особо понятно, хочется опытное мнение
Thanks:

Andrii

Avatar
Date: 10/3/2014
Reply


секретные разработки?
Thanks:

JaguarFX

Avatar
Date: 10/5/2014
Reply


Andrii Go to
секретные разработки?

Поиск по форуму - лучшее лекарство от подозрительности))
Так мной было описан полный набор функций для сохранения заявок/сделок по стратегии в базу данных в разделе по развитию S#.Shell Ссылка

Сейчас по прошествии 2-х месяцев могу сказать что все работает на 100%.
Однако я внес следующие изменения в подход к сохранению позиций:
1) заменил сохранение в MS SQL на сохранение в MS Access, используя универсальный интерфейс OleDb;
все-таки Access проше, систему не грузит и занимает в 10ки раз меньше места,
2) вообще прекратил сохранять заявки и сделки, сохраняю только позиции; для хранения позиций пришлось сделать отдельный класс TradeBook, в котором как раз расписано для каждой стратегии какую она имеет долю в "общем пироге" открытой по инструменту позиции - это к вопросу devruss'а относительно учета результатов работы нескольких стратегий с одним счетом и инструментом.
Thanks: Andrii devruss Mikhail Sukhov
1 2 3  >

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy