как установить максимальную просадку на сделку в pine

#pine-script #algorithmic-trading #trading #cryptocurrency #tradingview-api

Вопрос:

привет, ребята, у меня есть стратегия кросс-овер в пайне, у нее есть tp, sl, она просто покупает на бычьем кроссе и продает на медвежьем

я сохраняю все как есть, не возясь с tp и sl, но я хочу установить максимальную просадку в 5% процентов, чтобы, если она упадет до 5 или более процентов, сделка закрылась при закрытии свечи

 buy= crossunder (k,d)
sell= crossover(k,d)


// strategy
strategy.entry ("long", strategy.long, 100, when = buy) 
strategy.close ("long", when = sell)
 

Ответ №1:

Вот настройка стоп — лосса, которая ограничит просадку по каждой сделке до 5%. Как правило, просадка будет относиться в целом к стратегии в целом, что мы тоже можем сделать! Вот первая часть, хотя и дополненная вводом для ее изменения, и графиком, чтобы вы могли видеть ее во время торговли.

 stopPer = input(5.0, title='Stop Loss %', type=input.float) / 100

longStop = strategy.position_avg_price * (1 - stopPer)

plot(strategy.position_size > 0 ? longStop : na, style=plot.style_linebr, color=color.red, linewidth=1, title="Long Fixed SL")   

strategy.exit(id="Close Long", stop=longStop, when=strategy.position_size > 0)
 

Комментарии:

1. чувак, это буквально потрясающе, я действительно благодарен, большое спасибо, я добавил в таблицу, и теперь она работает как часы, большое спасибо, я хотел задать еще один вопрос, если ты не возражаешь! как вы думаете, насколько точен обратный тест t.v, я получаю 1200% на 15-метровом кадре с 1 августа, это нормально? и это работает только на графике btc, другие графики получают примерно 1-30% прибыли за тот же период времени и то же время.

2. Это здорово, и никаких проблем! В любом программном обеспечении для обратного тестирования может быть много предостережений, но если предпринять осторожные шаги, чтобы избежать предвзятости и понять, каковы ее причины, то результаты могут соответствовать ожидаемому поведению. Тем не менее, это звучит немного странно, и отдача немного высока, поэтому я был бы настроен скептически, но без доступа к дополнительной информации я не могу комментировать дальше, так как это было бы спекуляцией. Ваше здоровье!

3. теперь он работает, но сделки не доходят до binanace, к сожалению, я знаю, что я сделал неправильно, я опубликую код, если у вас будет время, пожалуйста, проверьте его, и я действительно сожалею, что беспокою вас много, я новый программист

4. Нет проблем! Я помогу, когда смогу

5. стратегия.вход («длинный», стратегия. длинная, когда =покупка,комментарий=»Длинная», alert_message= Длинная) стратегия.закрытие («длинная», когда = продажа, комментарий=»Длинная», alert_message= Длинная) стратегия.вход («короткая», стратегия. короткая, когда=продажа, комментарий=»Короткая», alert_message= Короткая) стратегия.закрыть («короткая», когда=покупка, комментарий=»Закрыть короткую», alert_message=Короткий выход) стратегия.выйти(«Длинный TSL», «длинный», trail_points = 0,02, trail_offset = 0,1,alert_message=Длинный выход) стратегия.выйти(«Короткий TSL», «короткий», trail_points = 0,02, trail_offset = 0,1, alert_message= Длинный выход)стратегия. выйти («Короткий TSL», «короткий», trail_points = 0,02, trail_offset = 0,1, alert_message = Коротко о выходе)