
Эта стратегия является краткосрочной торговой стратегией, основанной на теории прорыва. Она использует в сочетании с использованием среднелинейных показателей и показателей наивысшей цены / наименьшей цены для выявления сигналов прорыва, чтобы уловить прибыль от краткосрочных тенденций.
Эта стратегия использует 20-дневные максимумы для определения тенденции к росту, когда цена закрытия превышает 20-дневную максимуму, чтобы сделать больше; использует 10-дневные минимумы для определения тенденции к снижению, когда цена закрытия падает до 10-дневных минимумов, чтобы сделать пустоту. В то же время, она также использует более короткий 10-дневный максимум в качестве стоп-лосс-выхода для пустоты.
В частности, стратегия включает в себя следующие правила:
Сравняя ценовую связь закрытия с наивысшими и наименьшими ценами разных периодов, стратегия позволяет использовать короткие линии, чтобы уловить тенденционные прорывы в более коротких периодах.
Эта стратегия имеет следующие преимущества:
Однако эта стратегия также несет в себе некоторые риски:
Для управления риском можно установить стоп-лосс, чтобы ограничить одиночные потери, а также можно соответствующим образом скорректировать диапазон параметров, чтобы контролировать частоту торгов.
Эта стратегия также может быть оптимизирована в следующих аспектах:
добавление фильтров для других показателей, чтобы избежать ошибочного прорыва;
создание механизмов динамического выхода с использованием прибыли для отслеживания остановочных потерь;
включить правила определения тренда, чтобы избежать обратной торговли;
Оптимизация диапазона параметров для адаптации к различным циклам и рыночным условиям.
Эта стратегия в целом является простой и практичной краткосрочной стратегией прорыва. Она полезна для захвата трендовых возможностей в более короткие периоды. Но также существует риск быть заложенным и высокой частоты торгов.
/*backtest
start: 2022-11-27 00:00:00
end: 2023-12-03 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("TurtleBC Strategy v2 V.Troussel", shorttitle="TurtleBC-V.Troussel", overlay=true, pyramiding=0)
// === BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1)
FromDay = input(defval = 1, title = "From Day", minval = 1)
FromYear = input(defval = 2016, title = "From Year", minval = 2016)
ToMonth = input(defval = 1, title = "To Month", minval = 1)
ToDay = input(defval = 1, title = "To Day", minval = 1)
ToYear = input(defval = 9999, title = "To Year", minval = 9999)
enter_fast = input(20, minval=1)
exit_fast = input(10, minval=1)
exit_fast_short=input(10,minval=1)
fastL = highest(close, enter_fast)
fastS = highest(close ,exit_fast_short)
fastLC = lowest(close, exit_fast)
//Sortie pour le short
exitS=close>fastS[1]
enterL1 = close > fastL[1]
exitL1 = close <= fastLC[1]
strategy.entry("Long", strategy.long, when = enterL1 and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))
strategy.close("Long", when = exitL1 and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))
//le trigger de sortie est
strategy.entry("Short", strategy.short, when = exitL1 and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))
strategy.close("Short", when = exitS and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))