Эта стратегия представляет собой передовой подход к торговле, основанный на многомерных математических моделях, использующих множество математических функций и технических индикаторов для генерации торговых сигналов.
Основной принцип этой стратегии заключается в анализе различных аспектов рынка с помощью множества математических моделей и технических показателей:
Стратегия рассматривает эти факторы всесторонне, выдавая сигнал покупки, когда импульс положительный, краткосрочная тенденция растет, долгосрочная тенденция подтверждена, а волатильность умеренная.
Стратегия многомерной математической модели является комплексным методом торговли с прочной теоретической основой. Объединяя множество математических моделей и технических индикаторов, эта стратегия может анализировать рынок с нескольких углов, улучшая точность торговых решений. Однако сложность стратегии также несет в себе такие риски, как перенапряжение и чувствительность параметров. Будущие направления оптимизации должны сосредоточиться на улучшении адаптивности и надежности стратегии для поддержания стабильной производительности в различных рыночных условиях. В целом, это перспективная стратегия, которая посредством непрерывной оптимизации и тестирования имеет потенциал стать надежным инструментом торговли.
/*backtest start: 2019-12-23 08:00:00 end: 2024-09-24 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Advanced Math Strategy", overlay=true) // ======================= // ฟังก์ชันที่ใช้คำนวณเบื้องหลัง // ======================= // ฟังก์ชันซิกมอยด์ sigmoid(x) => 1 / (1 + math.exp(-x)) // ฟังก์ชันหาอัตราการเปลี่ยนแปลง (Derivative) roc = ta.roc(close, 1) // ฟังก์ชันการถดถอยเชิงเส้น (Linear Regression) linReg = ta.linreg(close, 14, 0) // ฟังก์ชันตัวกรองความถี่ต่ำ (Low-pass filter) lowPass = ta.ema(close, 50) // ======================= // การคำนวณสัญญาณ Buy/Sell // ======================= // การคำนวณอนุพันธ์สำหรับทิศทางการเคลื่อนที่ของราคา derivativeSignal = roc > 0 ? 1 : -1 // ใช้ Linear Regression และ Low-pass Filter เพื่อช่วยในการหาจุดกลับตัว trendSignal = linReg > lowPass ? 1 : -1 // ใช้ฟังก์ชันซิกมอยด์เพื่อปรับความผันผวนของราคา priceChange = close - close[1] volatilityAdjustment = sigmoid(priceChange) // สร้างสัญญาณ Buy/Sell โดยผสมผลจากการคำนวณเบื้องหลังทั้งหมด buySignal = derivativeSignal == 1 and trendSignal == 1 and volatilityAdjustment > 0.5 sellSignal = derivativeSignal == -1 and trendSignal == -1 and volatilityAdjustment < 0.5 // ======================= // การสั่ง Buy/Sell บนกราฟ // ======================= // ถ้าเกิดสัญญาณ Buy if (buySignal) strategy.entry("Buy", strategy.long) // ถ้าเกิดสัญญาณ Sell if (sellSignal) strategy.close("Buy") // ======================= // การแสดงผลบนกราฟ // ======================= // วาดเส้นถดถอยเชิงเส้นบนกราฟ plot(linReg, color=color.green, linewidth=2, title="Linear Regression") // วาดตัวกรองความถี่ต่ำ (Low-pass filter) plot(lowPass, color=color.purple, linewidth=2, title="Low-Pass Filter") // วาดจุด Buy/Sell บนกราฟ plotshape(series=buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(series=sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")