
Strategi ini adalah sistem perdagangan kuantitatif yang berasaskan transformasi logaritma dan persilangan rata-rata bergerak bertimbangan ((WMA)). Ia mengurangkan kebisingan pasaran dengan melakukan transformasi logaritma terhadap data harga dan menggunakan persilangan WMA jangka pendek dan jangka panjang untuk menghasilkan isyarat perdagangan. Idea utama strategi ini adalah untuk menukar turun naik harga ke ruang logaritma untuk pengendalian yang lebih lancar, dan dengan itu mendapatkan penilaian trend yang lebih stabil.
Strategi pertama melakukan penukaran logaritma pada harga penutupan untuk mengurangkan kesan nilai ekstrem dari pergerakan harga. Kemudian, rata-rata bergerak bertimbangan untuk jangka pendek ((5 kitaran) dan jangka panjang ((20 kitaran) dikira secara berturut-turut. Apabila WMA jangka pendek melangkau WMA jangka panjang, sistem menghasilkan sinyal multitasking; apabila WMA jangka pendek melangkau WMA jangka panjang, sistem menghasilkan tanda kosong.
Ini adalah strategi pengesanan trend yang menggabungkan penukaran logaritma dan rata-rata bergerak berat. Dengan penukaran logaritma, kesan turun naik harga dikurangkan, dan titik peralihan trend ditangkap dengan menggunakan crossover dua rata-rata bergerak. Logik strategi jelas dan mempunyai kebolehan operasi yang baik, tetapi perlu berhati-hati dalam mengawal risiko di pasaran yang bergolak.
/*backtest
start: 2022-02-09 00:00:00
end: 2025-02-06 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy("Logaritmik WMA Al-Sat Stratejisi", overlay=true)
// Parametreler
shortWMA_length = input.int(5, title="Kısa WMA (5)")
longWMA_length = input.int(20, title="Uzun WMA (20)")
// Logaritmik Fiyat Hesaplaması
log_close = math.log(close) // Fiyatların logaritmasını alıyoruz
// Logaritmik WMA'ların Hesaplanması
log_shortWMA = ta.wma(log_close, shortWMA_length) // Kısa WMA (Log)
log_longWMA = ta.wma(log_close, longWMA_length) // Uzun WMA (Log)
// WMA'ları Normal Ölçeğe Geri Dönüştürme
shortWMA = math.exp(log_shortWMA) // Logaritmadan geri dönüştürülmüş kısa WMA
longWMA = math.exp(log_longWMA) // Logaritmadan geri dönüştürülmüş uzun WMA
// Al-Sat Koşulları
longCondition = ta.crossover(shortWMA, longWMA) // Kısa WMA uzun WMA'yı yukarı keserse
shortCondition = ta.crossunder(shortWMA, longWMA) // Kısa WMA uzun WMA'yı aşağı keserse
// WMA'ları Çizdirme
plot(shortWMA, color=color.green, title="Kısa WMA (Log)", linewidth=2, style=plot.style_line)
plot(longWMA, color=color.red, title="Uzun WMA (Log)", linewidth=2, style=plot.style_line)
// İşlem Girişleri
if (longCondition)
strategy.entry("AL", strategy.long)
if (shortCondition)
strategy.entry("SAT", strategy.short)
// Alarm Fonksiyonu
if (longCondition)
alert("AL Sinyali: Kısa WMA (Log), Uzun WMA (Log)'yı yukarı kesti.", alert.freq_once_per_bar_close)
if (shortCondition)
alert("SAT Sinyali: Kısa WMA (Log), Uzun WMA (Log)'yı aşağı kesti.", alert.freq_once_per_bar_close)