Основная стратегия длинного индикатора тренда (MTIL) предназначена для использования в различных финансовых инструментах, включая криптовалюты, такие как BTCUSD и ETHUSD, а также традиционные акции, такие как AAPL. Она направлена на выявление потенциальных бычьих тенденций для входа в длинные позиции.
Стратегия MTIL использует оптимизированные параметры для расчета максимальных и минимальных цен в течение определенных периодов обратного отсчета.
В частности, он сначала выводит самые высокие и самые низкие цены за данные периоды. Затем они сглаживаются с использованием линейной регрессии с различными коэффициентами. Это приводит к созданию верхних и нижних границ. Когда сглаженные самые высокие цены нарушают верхнюю полосу, сглаженные самые низкие цены нарушают нижнюю полосу, а краткосрочная линейная регрессия закрывающих цен выше долгосрочной - генерируется бычий сигнал.
Стратегия MTIL имеет следующие преимущества:
Стратегия MTIL также сопряжена со следующими рисками:
Некоторые риски могут быть смягчены путем корректировки параметров, остановки потерь, контроля торговых издержек и т.д.
Стратегия MTIL может быть оптимизирована в следующих аспектах:
MTIL - это долгосрочная стратегия, использующая методы линейной регрессии для выявления основных тенденций. Благодаря настройке параметров она может быть адаптирована в различных рыночных средах. В сочетании с короткой стороной стратегии она предлагает более комплексный анализ. Дальнейшая оптимизация может повысить ее точность и прибыльность.
/*backtest start: 2023-02-12 00:00:00 end: 2024-02-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © jensenvilhelm //@version=5 strategy("Major Trend Indicator Long", shorttitle='MTIL', overlay = true) startDate = timestamp("2001 06 18") // Sets the start date for the strategy. // Optimized parameters length_high = 5 length_low = 5 linReg_st = 3 linReg_st1 = 23 linReg_lt = 75 // Defines key parameters for the strategy. X_i = ta.highest(high, length_high) Y_i = ta.lowest(low, length_low) // Calculates the highest and lowest price values within the defined lookback periods. x_y = ta.linreg(X_i + high, linReg_st1, 1) y_x = ta.linreg(Y_i + low, linReg_lt, 1) // Applies linear regression to smoothed high and low prices. upper = ta.linreg(x_y, linReg_st1, 6) lower = ta.linreg(y_x, linReg_st1, 6) // Determines upper and lower bounds using linear regression. upperInside = upper < y_x and upper > x_y lowerInside = lower > y_x and lower < x_y y_pos = (upper + lower) / 4 X_i1 = ta.highest(high, length_high) Y_i1 = ta.lowest(low, length_low) bull = x_y > upper and y_x > lower and ta.linreg(close, linReg_st, 1) > ta.linreg(close, linReg_lt, 5) // Defines a bullish condition based on linear regression values and price bounds. plotshape(series=(bull) ? y_pos : na, style=shape.circle, location=location.absolute, color=color.rgb(41, 3, 255, 40), size=size.tiny) if (time >= startDate) if (bull) strategy.entry("Long", strategy.long) if not (bull) strategy.close("Long") // Controls the strategy's execution based on the bullish condition and the start date.