Как тестируете стратегии для биржи? - страница 16

fxsaber #:

Fixed-версия по какой-то причине содержит тик с этим (см. скрин) временем. Это повторный тик.

Почему советник решил закрываться на этом тике - не знаю.

На втором скрине оригинальный GAZP.

Закрываются у меня все позиции каждый день на первом тике минуты 22:55. Настройки от форекса, чтобы не платить свопы.

Кстати на AskBid версии в 19 строке отчета есть пропуск закрытия, так как не было тиков Ask|Bid (или Last меняющих цену, которые являются родителями для Ask|Bid). 
В моей версии надо принудительно добавить Ask|Bid тик в конце минуты, чтобы не было пропуска баров. Для Last сделал, про ask|Bid забыл.
Aleksei Kuznetsov #:
В моей версии надо принудительно добавить Ask|Bid тик в конце минуты
С нулевым флагом?
fxsaber #:
С нулевым флагом?

А он будет работать? Цены Ask и Bid с ним наверно даже не сохранятся.
Думаю что надо обе цены и оба флага. Хуже от этого не будет.

Но добавлять при наличии хотя бы 1-го Last тика.

Aleksei Kuznetsov #:

А он будет работать?

Не знаю. Только методом тыка. Фактически вы вешаете на тиковую историю еще и таймер-функционал. Сомнительное решение.
fxsaber #:
Не знаю. Только методом тыка. Фактически вы вешаете на тиковую историю еще и таймер-функционал. Сомнительное решение.
Без таймера.
Aleksei Kuznetsov #:

Но добавлять при наличии хотя бы 1-го Last тика.

Этот Last тик переделать в Ask|Bid. На бирже бары по Last формируются. С такой переделкой и Bid бары будут без пропусков.

Aleksei Kuznetsov #:
Закрываются у меня все позиции каждый день на первом тике минуты 22:55.

Вроде, в других ситуациях отличий нет.


А если будет условие закрытия на первом тике после 22:55:30 - снова тиковую историю иначе генерировать?

Если прогонять через Virtual, то, наверное, можно задним числом подкорректировать цену закрытия, будто бы сделали это по таймеру - ровно в 22:55:00. Это лучше, чем трогать тиковую историю.


ЗЫ Expiration для позиций...

Aleksei Kuznetsov #:
Закрываются у меня все позиции каждый день на первом тике минуты 22:55. Настройки от форекса, чтобы не платить свопы.

Посмотрел код эксперта. Уточнение:
Закрываются у меня все позиции каждый день на первом тике с временем >= минуты 22:55, т.е. до конца дня. 
Поэтому на _AskBid символе первая сделка закрылась на следующей минуте когда пришел новый Ask|Bid тик. А в _Fixed был Last тик в 22:55:04.364, поэтому закрылся в это время с отличием в результате в 1 пункт. 

Добавление Ask|Bid тика при наличии хотя бы одного Last тика в минуте исправит это отличие.
В общем-то оно у меня было закодировано, но потом был цикл чистки дублирующих Ask | Bid для экономии дискового пространства. Забыл про дубли на новых минутах. Убрал эту чистку. 

Теперь результаты GAZP_AskBid_Custom стали ближе к GAZP_Fixed_Custom,   а GAZP_AskBid_Math полностью совпадают с GAZP_Fixed_Math. 
Из за того что GAZP_AskBid_Math теперь содержит больше тиков, расчеты стали медленнее: вместо 0.6-0.7 сек стало 0.9 сек.

Новые файлы AskBid приложил.

Файлы:
2_AskBid.zip  30 kb
fxsaber #:

ЗЫ Expiration для позиций...

При таком числе ошибок, которые постоянно обаруживаются в тестере и терминале - лучше самому контролировать всё что можно.

Aleksei Kuznetsov #:

Из за того что GAZP_AskBid_Math теперь содержит больше тиков, расчеты стали медленнее: вместо 0.6-0.7 сек стало 0.9 сек.

Почему тиков стало на десятки процентов больше?
fxsaber #:
Почему тиков стало на десятки процентов больше?

До этого дублирующие цены были удалены.

Стало больше на 7%

Total ticks: 28991564
Total ticks: 31185972
Замедление сильнее, так как файлы тоже стали больше и тоже вносят свой %