
Esta estratégia permite a arbitragem entre diferentes mercados através do cálculo de médias móveis regularizadas adaptáveis. A estratégia possui características como arbitragem entre mercados, ajuste de parâmetros dinâmicos e controle de risco.
A estratégia define primeiro uma função scaleMinimax para estandarizar a sequência de tempo para um intervalo especificado. Depois define uma função rema de média móvel de regularização adaptativa para calcular a linha de sinal depois de suavizada. A linha de sinal é calculada da seguinte forma:
Depois de receber o sinal, a estratégia decide sobre a disponibilidade de espaço, julgando o sinal e o preço. Concretamente:
Além disso, a estratégia adiciona o fator de suavização smooth e mostra a linha de sinal show_line como parâmetros ajustáveis, aumentando a flexibilidade da estratégia.
Em comparação com a estratégia de média móvel tradicional, a estratégia tem as seguintes vantagens:
A estratégia também traz alguns riscos:
A solução é ajustar adequadamente os parâmetros de suavização, evitando a vibração da linha de sinal.
A arbitragem entre mercados deve garantir que os dois mercados tenham uma correlação de preços e um movimento consistente. A solução é escolher um mercado de alta correlação para a arbitragem.
A otimização de parâmetros requer o acúmulo de dados históricos suficientes para a retrospectiva. A solução é ajustar cuidadosamente os parâmetros em transações reais.
A estratégia também pode ser melhorada nos seguintes aspectos:
Na seleção de parâmetros, é possível introduzir um conjunto de parâmetros de otimização automática de algoritmos de aprendizado de máquina.
Na geração de sinais, pode-se introduzir mais indicadores para combinação, construindo um sinal de negociação mais estável.
No controle de risco, pode-se definir um limite de perda para controlar a perda individual.
A arbitragem de mercado cruzado pode ser ampliada para outras variedades de transações de alta relevância.
Esta estratégia permite a negociação de arbitragem entre os mercados através de um método adaptativo de cálculo de médias móveis. Em comparação com a estratégia de médias móveis tradicionais, tem vantagens como adaptação de parâmetros, processamento suave e arbitragem entre os mercados. Em seguida, a estratégia é otimizada ainda mais por meio de aprendizado de máquina, combinação de sinais e gerenciamento de risco.
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Crossover82%", overlay=true)
//
// Functions
//
scaleMinimax(X, p, min, max) =>
hi = highest(X, p), lo = lowest(X, p)
(max - min) * (X - lo)/(hi - lo) + min
rema(ts, p) => // regularized ma
rm = 0.0, lambda = .5, a = 2 / (p + 1)
rm := (nz(rm[1]) + a * (ts - nz(rm[1])) + lambda * (2 * nz(rm[1]) - nz(rm[2]))) / (lambda + 1)
rm
//
// Inputs
//
X = input(close, title="Data source")
smooth = input(2, title="REMA smooth factor")
show_line = input(true, title="Show signal line")
//
// Main
//
p = 5
sig = rema(scaleMinimax(pow(X*p,-X) - 0.1, 100, lowest(X, 100), highest(X, 100)), smooth)
plot(show_line ? sig : na, linewidth=1)
plot(cross(sig, X) ? ohlc4 : na, style=circles, linewidth=8, color=blue, transp=50)
longCondition = crossover(sig, X)
if (longCondition)
strategy.entry("LE", strategy.long)
shortCondition = crossunder(sig, X)
if (shortCondition)
strategy.entry("SE", strategy.short)