Автор |
Сообщение |
Avante
Зарегистрирован: 07.05.2009
Сообщения: 55
Откуда: с Луны
|
Заметил еще одну не слишком приятную вещь -
стоп сигнал срабатывает не на том баре, на котором он получен, а только в начале следующего.
В настройках стопов стоит следующее:
Maximum stop loss - percent
Exit intraday at stop (1)
Re-enter Delay - 0
Что я не так делаю?
Может, Re-enter Delay вместо "0" поставить "-1"?
И еще: дает ли увеличение скорости вывода заявок, если в квике установить вместо 5-минутного тиковый экспорт? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
От экспорта по идее скорость не зависит, зависит от фрейма на котором работает робот.
Стоп срабатывает только на следующем баре потому, что там задержка срабатывания сигналов покупки/продажи предусмотрена
вот тут
Код: |
Buy = LastValue(Ref(Buy, -1));
Sell = LastValue(Ref(Sell, -1));
Short = LastValue(Ref(Short, -1));
Cover = LastValue(Ref(Cover, -1));
|
В принципе сигналы стопов после обработки функцией Equity() не равны 1 (см коменты в хелпе по ф-ции Equity)
Можно немного подшаманитьь код чтобы сигналы стопов не сдвигал. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Avante
Зарегистрирован: 07.05.2009
Сообщения: 55
Откуда: с Луны
|
Тайм-фрейм у меня 5-ти минутки.
То есть, даже если в настройках Стопов поставить задержку Delay "-1" это все равно ничего не изменит? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
Avante
Зарегистрирован: 07.05.2009
Сообщения: 55
Откуда: с Луны
|
Код: |
Buy = LastValue(Ref(Buy, -1));
Sell = LastValue(Ref(Sell, -1));
Short = LastValue(Ref(Short, -1));
Cover = LastValue(Ref(Cover, -1));
|
Я почему-то считал, что этот код к настройке стопов в Бэктестере отношения не имеет, а робот разве не выходит из позиции, согласно этим настройка?
Только вот не понимаю, как система учитывает цену, за которую была совершена сделка, если кидает заявку по рынку?
Или это только для теста работает?
А в коде это можно реализовать используя ApplyStop? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Avante писал(а): |
Я почему-то считал, что этот код к настройке стопов в Бэктестере отношения не имеет, а робот разве не выходит из позиции, согласно этим настройка?
Только вот не понимаю, как система учитывает цену, за которую была совершена сделка, если кидает заявку по рынку?
|
Не надо путать робота и код для тестирования. Это всетаки не одно и тоже.
В тестере он берет цену по которой заявлена сделка и считает, что исполнение было по этой цене
Avante писал(а): |
А в коде это можно реализовать используя ApplyStop? |
Можно. Почитай внимательно про функцию Equity() |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Avante
Зарегистрирован: 07.05.2009
Сообщения: 55
Откуда: с Луны
|
вот, спасибо большое, я понял.
попробую разобраться. |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
Avante
Зарегистрирован: 07.05.2009
Сообщения: 55
Откуда: с Луны
|
Олег, помоги пожалуйста, как это в коде описать:
ApplyStop(type= 0; StopTypeLoss //максимальный стоп-лосс//
mode = 1; StopModePercent //активация по потери на сделку//
amount =0,65; StopModePercent // максимальный процент потерь на одной сделки//
Volatile = FALSE // запрет на узменение уровня стопа //
ApplyStop(stopTypeLoss, stopModePercent, 0.65, False);
Equity, насколько я понял, вычисляет массив капитала, и уже от него рассчитывает убыток, так?
А мне нужно вычислить убыток отпоследней сделки, чтоб стоп корректно выставить. Как это сделать можно? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Не. Если стоп в процентах, то он срабатывает при изменении цены актива на заданный процент. А вот что надо я точно не понял. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Avante
Зарегистрирован: 07.05.2009
Сообщения: 55
Откуда: с Луны
|
Надо вот что:
Система становится в лонг, BuyPrice - 10000 пунктов.
Цена пошла вниз, и задача системы закрыть позу на BuyPrice минус процент.
Вот это я пытаюсь реализовать.
То, есть чтоб выход срабатывал от изменеие цены входа, но не капитала. |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Именно так и работает ApplyStop(stopTypeLoss, stopModePercent...) |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Avante
Зарегистрирован: 07.05.2009
Сообщения: 55
Откуда: с Луны
|
ага, Олег, это я уже прочитал,
а сам код написать правильно, помоги пожалуйста.
И я не понимаю, цену исполнения заявки откуда он берет? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Код написан правильно. Цену исполнения он высчитывает относительно открытия. Берет именно цену на которой % будут равны заявленным. Только проверяет чтобы такая цена была на рынке. Меньше High и больше Low. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Avante
Зарегистрирован: 07.05.2009
Сообщения: 55
Откуда: с Луны
|
Ага, понятно, хорошо.
Завтра проверю, как оно работает на деле. |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
Avante
Зарегистрирован: 07.05.2009
Сообщения: 55
Откуда: с Луны
|
Олег, а еще такой вопрос:
если оператор Volatile = FALSE, и рынок открывается гепом вниз, стоп не может не испониться, так как цена пролетела заначение моего стопа? Может, тогда правильнее будет TRUE поставить? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Он проверит была ли такая цена на рынке и возьмет ту, которая была. Несмотря на False |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
|