робот не закрывает позицию по времени.
На основе робота Alfa_EE создаю новый, добавляю третье правило на закрытие позиции, если текущее время больше 23:28 (для графика SIH6 период М30). Терминал сгенерировал код:Код: Выделить всё
/// ПРАВИЛО 3
if ( (BarTime() > AsTime(23, 28, 0)) )
{
ClosePosition();
}
При тестировании робот после 23:25 не закрывает позицию. То же и для Alfa_ES, Alfa_MACD.
Создал робота (для графика SIH6 период М30) для входа в Шорт при пересечении ЕМА50 быстрой ЕМА10 сверху вниз и выходе при закрытии бара выше EMA10 или по времени (третье правило)- при тестировании правило работает!!!! Закрывает сделку после 23:28.
При использовании иных индикаторов третье правило не работает. Получился всего 1 робот с работающим 3-м правилом. Не пойму в чем причина. Ведь весь код генерировала машина.
Стратегии и роботы > Робот не закрывает позицию по времени.
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Робот не закрывает позицию по времени.
Gena 05.03.2016 12:51:36
никогда такого не было и вот опять
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Робот не закрывает позицию по времени.
Это не текущее время, а время бара.
и если у вас в правилах открытия EMA > EMA и EMA < EMA замените на пересекает вверх и пересекает вниз и всё заработает.
а ещё важно какой таймфрейм, если у вас H1 или выше на роботе, то
BarTime() на 23 часах выдаст 23:00:00, а это меньше вашего условия и правило не сработает, а на следующем баре будет уже 00:00:00 и правило так же не сработает, т.к. условие не выполняется.
и если у вас в правилах открытия EMA > EMA и EMA < EMA замените на пересекает вверх и пересекает вниз и всё заработает.
а ещё важно какой таймфрейм, если у вас H1 или выше на роботе, то
BarTime() на 23 часах выдаст 23:00:00, а это меньше вашего условия и правило не сработает, а на следующем баре будет уже 00:00:00 и правило так же не сработает, т.к. условие не выполняется.
Код: Выделить всё
/**
Стратегия на пересечении 2х ЕМА.
Developed by Alfadirect;
Algorithm = ТРЕНД;
Hash code CF943F470615A836BD6B1073B46C0714
**/
function Initialize()
{
StrategyName = "Alfa_EE";
AddParameter("P1", 1, "", 1);
AddParameter("P2", 100, "", 0);
AddInput("Input1", Inputs.Candle, 60, true, "GAZP=МБ ЦК");
LongLimit = 0;
ShortLimit = 0;
}
function OnUpdate()
{
/// ПРАВИЛО 1
if ( (CrossAbove(EMA(Input1.Close, P1), EMA(Input1.Close, P2)) == true) )
{
EnterLong();
}
/// ПРАВИЛО 2
if ( (CrossBelow(EMA(Input1.Close, P1), EMA(Input1.Close, P2)) == true) )
{
EnterShort();
}
/// ПРАВИЛО 5
if ( (BarTime() > AsTime(23, 28, 0)) )
{
ClosePosition();
}
}
никогда такого не было и вот опять
Re: Робот не закрывает позицию по времени.
У меня возникло несколько вопросов.
1. Если я создам робота, он будет работать после закрытия мною терминала? Или же робот работает, пока терминал включен?
2. Я заметил, что если задаешь в условии получить реакцию относительно скажем, максимума бара, при тестировании робот всё равно учитывает закрытие бара. При реальной работе робот будет реагировать на максимум бара, как прописано в условии, или нет?
3. При создании робота учитываются только открытие, закрытие, максимум и минимум бара, или можно задать роботу реагировать на текущее значение бара? Если можно, то какой параметр задавать на отслеживание текущего значения бара.
Заранее спасибо за ответы.
1. Если я создам робота, он будет работать после закрытия мною терминала? Или же робот работает, пока терминал включен?
2. Я заметил, что если задаешь в условии получить реакцию относительно скажем, максимума бара, при тестировании робот всё равно учитывает закрытие бара. При реальной работе робот будет реагировать на максимум бара, как прописано в условии, или нет?
3. При создании робота учитываются только открытие, закрытие, максимум и минимум бара, или можно задать роботу реагировать на текущее значение бара? Если можно, то какой параметр задавать на отслеживание текущего значения бара.
Заранее спасибо за ответы.
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Робот не закрывает позицию по времени.
Геннадий писал(а):1. Если я создам робота, он будет работать после закрытия мною терминала? Или же робот работает, пока терминал включен?
Только при включенном терминале.
Геннадий писал(а):2. Я заметил, что если задаешь в условии получить реакцию относительно скажем, максимума бара, при тестировании робот всё равно учитывает закрытие бара. При реальной работе робот будет реагировать на максимум бара, как прописано в условии, или нет?
High, Low, Open, Close, Vol всё это доступно для правил, т.е. для принятия решений, но сигнал робот исполняет на закрытии, т.е. только на close свечи.
Геннадий писал(а):3. При создании робота учитываются только открытие, закрытие, максимум и минимум бара, или можно задать роботу реагировать на текущее значение бара? Если можно, то какой параметр задавать на отслеживание текущего значения бара.
Ответ в ответе на вопрос 2. Текущее значение робот не видит.
Это что понял я, а также ответы на мои подобные вопросы и других участников в офиц. форуме и вебинарах по роботам.
Вообще если хотите официальных ответов от разработчиков записывайтесь на вебинар по роботам и там можно многое узнать про работу роботов. Периодически они (вебинары) появляются в учебном центре в закладке "Терминал". Вот следующий на 15 марта назначен, записывайтесь т.к. места ограничены.
никогда такого не было и вот опять
Re: Робот не закрывает позицию по времени.
Спасибо за информацию. Слежу за семинарами, но во Владивостоке навряд ли буду проводить семинары по роботам. Поэтому приходится всё собирать по крупицам.
Re: Робот не закрывает позицию по времени.
Вот собрал простенького робота. Используется для открытия шорта на нисходящем тренде.
Оптимизирован для SIH6 M30.
Открытие: Правило 1 - шорт открывается при пересечении ЕМА50 быстрой ЕМА10 сверху вниз.
Закрытие: Правило 2 – бар закрывается выше EMA10; Правило 3 – позиция закрывается сразу после 23:28 (до закрытия вечерней сессии); Правило 4 – минимум бара закрывается выше учетной цены открытой роботом позиции.
Выражение && AverPrice() > 0 не позволяет срабатывать правилам на закрытие шорта при отсутствии открытой позиции [когда AverPrice()=0].
На тесте за 43 дня с 22.01.16 по 4.03.16 прибыль составила 62,46% (просадка -3,64%). Из 12 сделок 8 прибыльных.
Пример
Оптимизирован для SIH6 M30.
Открытие: Правило 1 - шорт открывается при пересечении ЕМА50 быстрой ЕМА10 сверху вниз.
Закрытие: Правило 2 – бар закрывается выше EMA10; Правило 3 – позиция закрывается сразу после 23:28 (до закрытия вечерней сессии); Правило 4 – минимум бара закрывается выше учетной цены открытой роботом позиции.
Выражение && AverPrice() > 0 не позволяет срабатывать правилам на закрытие шорта при отсутствии открытой позиции [когда AverPrice()=0].
На тесте за 43 дня с 22.01.16 по 4.03.16 прибыль составила 62,46% (просадка -3,64%). Из 12 сделок 8 прибыльных.
Код: Выделить всё
/**Si ЕМА10хЕМА50 (Шорт на М30). Стоп
Developed by GenGal;
Algorithm = ТРЕНД;**/
function Initialize()
{
StrategyName = "GenGal_EE_test2";
AddParameter("P1", 10, "", 1);
AddParameter("P2", 50, "", 0);
AddInput("Input1", Inputs.Candle, 30, true, "SiH6=ФОРТС");
LongLimit = 0;
ShortLimit = 0;
}
function OnUpdate()
{
/// ПРАВИЛО 1
if ( (CrossBelow(EMA(Input1.Close, P1), EMA(Input1.Close, P2)) == true) )
{
EnterShort();
}
/// ПРАВИЛО 2
if ( ((Input1.Close > EMA(Input1.Close, P1)) && AverPrice() > 0))
{
CloseShort();
}
/// ПРАВИЛО 3
if ( ((BarTime() > AsTime(23, 28, 0)) && AverPrice() > 0))
{
CloseShort();
}
/// ПРАВИЛО 4
if ( ((Input1.Low > AverPrice()) && AverPrice() > 0))
{
CloseShort();
}
}
Пример
- Вложения
-
- Робот ЕМА10хЕМА50.png (22.06 КБ) 29518 просмотров
Последний раз редактировалось Геннадий 07 мар 2016, 12:08, всего редактировалось 9 раз.
Re: Робот не закрывает позицию по времени.
Откорректировал сообщение выше. Первый раз тут. Еще не все тонкости оформления освоил, извините.
Подскажите еще как вставлять изображение. Вызываю теги img/img между ними нужно вставить ссылку на изображение. А откуда брать ссылку?
Подскажите еще как вставлять изображение. Вызываю теги img/img между ними нужно вставить ссылку на изображение. А откуда брать ссылку?
Последний раз редактировалось Геннадий 07 мар 2016, 12:09, всего редактировалось 3 раза.
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Робот не закрывает позицию по времени.
Геннадий писал(а):Правило 4 нужно записать так
Вы всегда можете отредактировать свое сообщение нажав карандаш у своего сообщения.
как оформлять код я подсказывал вот тут и тогда он будет выглядеть близко к цветовому оформлению редактора АД4. Ваше первое сообщение я первый раз поправил, теперь попробуйте сами исправить его и заменить правило 4.
никогда такого не было и вот опять
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Робот не закрывает позицию по времени.
Геннадий писал(а):Подскажите еще как вставлять изображение
Внизу вашего сообщения есть Настройки \ Вложения
во вложениях загрузите (Добавить файлы) вашу картинку \ картинки и там же будет кнопка вставить в текст вашего поста (заранее поставьте в тексте в нужное место курсор)
А тэг IMG, который в меню редактирования это для вставки внешних картинок (с других сайтов)
никогда такого не было и вот опять
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Робот не закрывает позицию по времени.
Геннадий писал(а):Слежу за семинарами, но во Владивостоке навряд ли буду проводить семинары по роботам
речь о онлайн-семинарах - вебинарах, т.е. через интернет.
никогда такого не было и вот опять
Вернуться в «Стратегии и роботы»
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 10 гостей