всем привет, вот такой вопрос: допустим есть стратегия по RSI, открывающая (или закрывающая) позиции по пересечении уровня в 50 (приводить код думаю не имеет смысла, всем и так ясно). Все работает прекрасно, однако тольок на длинным трендах и без трейлинг стопа, потому надо: сделать так, чтобы после закрытия позиции, когда RSI откатывается назад к отметке 50, позиция больше не открывалась (не смотря на то, что основное правило RSI > RsiBuyLevel остается в силе).
есть нескольок вариантов, как это можно сделать (для начала перечисляю все, что смог придумать):
1) проверять прошлый ордер по MODE_HISTORY и если он был противоположным то ждать (т.е. ордер закрылся, после чего идет проверка if только что закрывшийся был long, значит следюущий будет только short и с соблюдением условий уже для коротких позицийй). Вроде бы должно работать, однаок слождно предположить что будет, если где-то проскочит ошибка - все ордеры будут открываться в противоположном направлении
2) использовать что-то типа булевой переменной или константы
Прошу всех высказываться или предложить иную идею. Сам я более склонюясь ко второму, однако рабочий код написать пока не получается.
2) использовать что-то типа булевой переменной или константы
Прошу всех высказываться или предложить иную идею. Сам я более склонюясь ко второму, однако рабочий код написать пока не получается.
При открытии ордера - просто запомните его направление. а затем при попытке снова открыть ордер проверьте это послденее направление. И если оно было противоположное, то смело открывайте...
if (RSI>RSI_BuyLvl && prevDir!=OP_BUY) { OrderSend(OP_BUY...) prevDir=OP_BUY; } if (RSI<RSI_SellLvl && prevDir!=OP_SELL) { OrderSend(OP_SELL...) prevDir=OP_SELL; }
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
всем привет, вот такой вопрос: допустим есть стратегия по RSI, открывающая (или закрывающая) позиции по пересечении уровня в 50 (приводить код думаю не имеет смысла, всем и так ясно). Все работает прекрасно, однако тольок на длинным трендах и без трейлинг стопа, потому надо: сделать так, чтобы после закрытия позиции, когда RSI откатывается назад к отметке 50, позиция больше не открывалась (не смотря на то, что основное правило RSI > RsiBuyLevel остается в силе).
есть нескольок вариантов, как это можно сделать (для начала перечисляю все, что смог придумать):
1) проверять прошлый ордер по MODE_HISTORY и если он был противоположным то ждать (т.е. ордер закрылся, после чего идет проверка if только что закрывшийся был long, значит следюущий будет только short и с соблюдением условий уже для коротких позицийй). Вроде бы должно работать, однаок слождно предположить что будет, если где-то проскочит ошибка - все ордеры будут открываться в противоположном направлении
2) использовать что-то типа булевой переменной или константы
Прошу всех высказываться или предложить иную идею. Сам я более склонюясь ко второму, однако рабочий код написать пока не получается.