Стратегии и роботы > ES+стоп-лосс ???
ES+стоп-лосс ???
Не пойму как в конструкторе стратегий добавить в базовую ES возможность реверса в случае превышения процента убытка.
Подскажите спецы ?
Подскажите спецы ?
- evge
- Администратор
- Сообщения: 1812
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: ES+стоп-лосс ???
Ну если правильно понял, то так:
добавив 2 правила:
где проверяем позицию CurrentPosition() > 0 - т.е. сейчас открыт long, < 0 - short
и проверяем на превышение % убытка < P3 - в параметре задаем отрицательное значение (убыток)
и прописываем открыть противоположную позицию
добавив 2 правила:
где проверяем позицию CurrentPosition() > 0 - т.е. сейчас открыт long, < 0 - short
и проверяем на превышение % убытка < P3 - в параметре задаем отрицательное значение (убыток)
и прописываем открыть противоположную позицию
никогда такого не было и вот опять
- evge
- Администратор
- Сообщения: 1812
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: ES+стоп-лосс ???
но что-бы это всё работало! надо основные 2 правила изменить!
так:
так:
никогда такого не было и вот опять
- evge
- Администратор
- Сообщения: 1812
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: ES+стоп-лосс ???
Да, стратегии примитивные. Эти стратегии как мини-демо примеры в терминале. Нужно свое составлять.
никогда такого не было и вот опять
Re: ES+стоп-лосс ???
evge писал(а):Да, стратегии примитивные. Эти стратегии как мини-демо примеры в терминале. Нужно свое составлять.
Да блин не умею... я в это дело 3 месяца назад сунулся. Никогда и рядом не стоял ))
Зато у меня куча времени на тестирование и обкатку. Приму помощь грамотного чела в разработке роботов и поделюсь результатами.
- evge
- Администратор
- Сообщения: 1812
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: ES+стоп-лосс ???
Ипонамама писал(а):не умею
думаю лучше всего это писать индикаторы, а сам робот будет простой.
Индикатор подает сигнал: купи, продай, закрой позицию.
А в стратегии простые правила их исполняющие.
никогда такого не было и вот опять
- evge
- Администратор
- Сообщения: 1812
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Re: ES+стоп-лосс ???
всё таки 1,2 правила надо менять. Просто проверка EMA > SMA или EMA < SMA не подойдет для реверса.
надо сделать условие пересекает вверх \ вниз
и ещё
правило 3,4 будет всегда делать реверс, независимо от того что сейчас показывает EMA и SMA
т.е. если после % убытка и переворота опять будет убыток сработает ещё раз реверс.
Т.е. в правилах 3 и 4 можно (а может и не нужно) добавить правило EMA>SMA и EMA<SMA из правил 1 и 2 соответственно.
итоговый код стратегии:
надо сделать условие пересекает вверх \ вниз
и ещё
правило 3,4 будет всегда делать реверс, независимо от того что сейчас показывает EMA и SMA
т.е. если после % убытка и переворота опять будет убыток сработает ещё раз реверс.
Т.е. в правилах 3 и 4 можно (а может и не нужно) добавить правило EMA>SMA и EMA<SMA из правил 1 и 2 соответственно.
итоговый код стратегии:
Код: Выделить всё
/**
Стратегия на пересечении быстрой ЕМА и медленной SMA.
Developed by evge;
Algorithm = ТРЕНД;
Hash code 4A9CEBFFFA1A8F7C09FA291DBC599531
**/
function Initialize()
{
StrategyName = "Alfa_ES";
AddParameter("P1", 3, "", 1);
AddParameter("P2", 75, "", 0);
AddParameter("P3", -1, "", 1);
AddInput("Input1", Inputs.Candle, 60, true, "SBER=МБ ЦК");
LongLimit = 0;
ShortLimit = 0;
}
function OnUpdate()
{
/// ПРАВИЛО 1
if ( (CrossAbove(EMA(Input1.Close, P1), SMA(Input1.Close, P2)) == true) && (CurrentPosition() <= 0) )
{
EnterLong();
}
/// ПРАВИЛО 2
if ( (CrossBelow(EMA(Input1.Close, P1), SMA(Input1.Close, P2)) == true) && (CurrentPosition() >= 0) )
{
EnterShort();
}
/// ПРАВИЛО 3
if ( (CurrentPosition() > 0) && (CurrentPLper() < P3) && (EMA(Input1.Close, P1) > SMA(Input1.Close, P2)) )
{
EnterShort();
}
/// ПРАВИЛО 4
if ( (CurrentPosition() < 0) && (CurrentPLper() < P3) && (EMA(Input1.Close, P1) < SMA(Input1.Close, P2)) )
{
EnterLong();
}
}
никогда такого не было и вот опять
- evge
- Администратор
- Сообщения: 1812
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 367 раз
- Контактная информация:
Тестирование и оптимизация
Это тестирование и оптимизация без 3,4 правил стратегии
на скриншоте P3=-1, но на самом деле оно -1000, т.е. правила 3, 4 отключены
оптимизация с параметром P3 = -1000, т.е. отключены правила 3, 4
P1, P2 от 5 до 150 с шагом 5
на скриншоте P3=-1, но на самом деле оно -1000, т.е. правила 3, 4 отключены
оптимизация с параметром P3 = -1000, т.е. отключены правила 3, 4
P1, P2 от 5 до 150 с шагом 5
никогда такого не было и вот опять
Вернуться в «Стратегии и роботы»
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 9 гостей