
A estratégia é um sistema de negociação quantitativa baseado na transformação de logarítmos e na interseção de médias móveis ponderadas (WMA). Reduz o ruído do mercado através da conversão de dados de preços em logarítmos e gera sinais de negociação usando a interseção de WMAs de curto e longo prazo. A ideia central da estratégia é a transformação da oscilação de preços em um espaço logarítmico para suavizar o processamento, resultando em um julgamento de tendências mais estável.
A estratégia primeiro faz uma conversão analógica do preço de fechamento para reduzir o impacto dos extremos da oscilação dos preços. Em seguida, calcula-se uma média móvel ponderada de curto prazo (de 5 ciclos) e de longo prazo (de 20 ciclos), respectivamente. Quando o WMA de curto prazo atravessa o WMA de longo prazo para cima, o sistema gera um sinal de multitasking; quando o WMA de curto prazo atravessa o WMA de longo prazo para baixo, o sistema gera um gap.
Trata-se de uma estratégia de acompanhamento de tendências que combina a conversão logarítmica e a média móvel ponderada. Para reduzir o impacto da oscilação dos preços através da conversão logarítmica, a estratégia utiliza o cruzamento de duas médias móveis para capturar os pontos de conversão de tendências. A estratégia tem uma lógica clara e uma boa operabilidade, mas é necessário ter cuidado com o controle de risco em mercados turbulentos.
/*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)