Estratégia de negociação quantitativa de médio e longo prazo baseada em Bandas de Bollinger


Data de criação: 2023-09-14 20:09:13 última modificação: 2023-09-14 20:09:13
cópia: 2 Cliques: 679
1
focar em
1617
Seguidores

Este artigo detalha uma estratégia de negociação quantitativa de médio e longo prazo com o uso do indicador de Brin. A estratégia de negociação é formada por uma ruptura de preço através da determinação da faixa de Brin.

Princípios estratégicos

A estratégia é baseada nos seguintes indicadores da faixa de Bryn:

  1. Calcular a mediana de preços de um determinado período como uma linha de referência;

  2. Calcule o diferencial padrão de preço e multiplique o múltiplo pelo intervalo;

  3. Os ângulos médios de ± compõem a faixa de Brin para cima e para baixo;

  4. Quando o preço quebra o Brin e entra em uma trajetória descendente, um sinal de negociação é formado.

A lógica das transações é a seguinte:

Quando o preço quebra o Bollinger Bandwagon, um sinal de compra é formado para fazer uma posição mais alta;

Quando o preço quebra o Bollinger Bands, um sinal de venda é formado e uma posição é fechada.

E um ponto de parada de um determinado percentual para bloquear o lucro.

Em geral, a estratégia capta tendências de linha média e longa, julgando que o preço atravessou a faixa de Brin e entrou em declínio.

A vantagem estratégica

As principais vantagens desta estratégia são:

Em primeiro lugar, a faixa de Brin pode ser usada para determinar breakouts e reversões de preços, capturando tendências de médio e longo prazo.

Em segundo lugar, a configuração de stop-loss é direta e controlada, facilitando a gestão ativa de fundos;

Por fim, as regras da estratégia são simples e claras, fáceis de implementar e de otimizar.

C. Riscos potenciais

Mas também devemos estar atentos aos seguintes riscos:

Em primeiro lugar, a faixa de Brin precisa de ser optimizada com precisão para produzir um sinal estável.

Em segundo lugar, um stop loss muito pequeno pode resultar em ganhos insuficientes; um stop loss muito grande pode acarretar riscos excessivos.

Por fim, é preciso evitar que as transações sejam muito frequentes.

Quatro conteúdos, resumo

Este artigo descreve detalhadamente uma estratégia de negociação quantitativa de médio e longo prazo que usa o indicador de Brin para acompanhar a tendência. A estratégia pode capturar a tendência de médio e longo prazo dos preços, mas precisa otimizar o intervalo de parâmetros e o nível de parada.

Código-fonte da estratégia
/*backtest
start: 2023-08-14 00:00:00
end: 2023-09-13 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//------------------------------------
//
// 『おすすめストラテジーSS1』
// 『BitMEX XBTUSD 30分足向け中長期用ストラテジー』
//  本番用ストラテジーファイル
//
//
//
//------------------------------------
//【説明】
// 『おすすめストラテジーSS1』のPineスクリプトです。
//------------------------------------
 
//@version=3
// strategy(title = "『おすすめストラテジーSS1』", shorttitle="Strategy1", initial_capital=1200000, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.05, overlay=true)
 
 
//------------------------------------
//
//ストラテジーロジック
//
//------------------------------------
 
 
source = close
 
length = input(51, minval = 1, title = "移動平均")
mult = input(3.01, minval = 0.001,step=0.01, maxval = 10, title = "マルチ")
 
Rikaku = input(14.2, minval = 0.1, step=0.1,maxval = 100, title = "利確(%)")
Songiri = input(99, minval = 0.1, maxval = 100, title = "損切(%)")
 
base = sma(source, length)
range = mult * stdev(source, length)
 
upper = base + range
lower = base - range
 
short_cond = crossover(source, lower)
long_cond = crossunder(source, upper)
 
 
cl = 0.0
cl := na(cl[1]) ? sma(source, length) : (cl[1] * (length - 1) + source) / length
 
plot(cl, color=black)
 
up_plot = plot(upper, color=blue)
low_plot = plot(lower, color=red)
 
fill(up_plot, low_plot,color=#009900)
 
//------------------------------------
//
//オーダー処理
//
//------------------------------------
 
 
if (long_cond)
 
	strategy.entry("Long_Entry", strategy.long, oca_name="BollingerBands", comment="Long")
 
	//BitFlyerのようなJPY建ての場合は以下のコードを使います。他の通貨ペアにする場合も1ティックが異なるため桁数の変更が必要です。
	//strategy.exit("LE Exit", "BBandLE", profit = close*(Rikaku/100)*100, loss = close*(Songiri/100)*100, comment="Close")
	strategy.exit("Long_Exit", "Long_Entry", profit = close*(Rikaku/100)*10, loss = close*(Songiri/100)*10, comment="LongClose")
 
if (short_cond)
 
	strategy.entry("Short_Entry", strategy.short, oca_name="BollingerBands",  comment="Short")
 
    //BitFlyerのようなJPY建ての場合は以下のコードを使います。他の通貨ペアにする場合も1ティックが異なるため桁数の変更が必要です。
    //strategy.exit("SE Exit", "BBandSE", profit = close*(Rikaku/100)*100, loss = close*(Songiri/100)*100, comment="Close")
    strategy.exit("Short_Exit", "Short_Entry", profit = close*(Rikaku/100)*10, loss = close*(Songiri/100)*10, comment="ShortClose")