Estratégia de negociação de alta probabilidade de breakout de equilíbrio de pressão


Data de criação: 2023-11-13 11:40:53 última modificação: 2023-11-13 11:40:53
cópia: 2 Cliques: 665
1
focar em
1617
Seguidores

Estratégia de negociação de alta probabilidade de breakout de equilíbrio de pressão

Visão geral

Esta estratégia usa uma combinação de vários indicadores para determinar a direção da tendência e o tempo de negociação, e usa uma abordagem de equilíbrio de pressão para aumentar a probabilidade de negociação. Usando principalmente os três indicadores MACD, PSAR e EMA para julgar, em combinação com o Stop Loss Stop para obter ganhos eficientes.

Princípio da estratégia

  1. Utilize a EMA para calcular a linha média e determinar a direção da tendência geral. Um EMA maior representa uma tendência ascendente e um EMA menor representa uma tendência descendente.

  2. Usando o MACD para calcular a diferença entre a linha rápida e a linha lenta, quando a diferença é maior que 0 significa que está em uma tendência ascendente, e quando a diferença é menor que 0 significa que está em uma tendência descendente.

  3. Usando o PSAR para calcular os pontos de variação contínua, quando o valor maior do PSAR representa atualmente uma tendência decrescente, quando o valor menor do PSAR representa atualmente uma tendência ascendente.

  4. A combinação dos três indicadores acima, para julgar a consistência da tendência. Quando os três indicadores de julgamento do resultado coincidir, representando a tendência é mais clara, pode ser feita compra ou venda operação.

  5. Abrir posições de acordo com as condições de compra e venda, e definir um ponto de parada de perda, para obter lucro quando atingir a condição de parada ou parada.

  6. As regras de funcionamento são as seguintes:

    • Condições de compra: Não tendência ascendente, diferença de MACD menor que 0, preço de fechamento acima da linha média da EMA
    • Condições de venda: tendência ascendente, diferença do MACD maior que 0, preço de fechamento abaixo da linha média do EMA
    • Condição de stop loss: preço atinge o próximo valor de PSAR
    • Condição de travagem: atingir a proporção de travagem definida

Vantagens estratégicas

  1. O uso de vários indicadores para avaliar tendências aumenta a precisão do julgamento.

  2. O equilíbrio de pressão é usado para abrir posições quando a tendência é clara, aumentando a probabilidade de lucro.

  3. Estabeleça um ponto de parada para limitar perdas e bloquear lucros.

  4. Um sistema de regras claras para transações programadas.

  5. Pode ser otimizado com parâmetros, adaptado a diferentes variedades e ciclos de negociação.

Risco estratégico

  1. A análise de tendências pode ser errada, levando a posições erradas.

  2. A tendência é que os mercados mudem drasticamente e os indicadores possam emitir sinais falsos.

  3. O ponto de paragem é muito grande e não pode ser parado a tempo.

  4. Parâmetros mal definidos, resultando em negociações muito frequentes ou impossibilitando a abertura de posições em tempo útil.

  5. A liquidez das variedades negociadas é insuficiente e não é possível deter os prejuízos como planejado.

  6. Pode-se reduzir o risco através da otimização dos parâmetros, ajustando o ponto de parada de perda e escolhendo variedades de negociação com boa liquidez.

Direção de otimização da estratégia

  1. Ajustar os parâmetros do ciclo EMA para otimizar a precisão do julgamento de tendências.

  2. Ajustar os parâmetros de ciclo de linha rápida e lenta do MACD para otimizar a sensibilidade do indicador MACD.

  3. Ajustar os parâmetros da proporção de stop loss para obter o melhor equilíbrio de stop loss.

  4. Adição de outros indicadores auxiliares para melhorar a precisão da seleção do momento da abertura da posição.

  5. Optimizar a seleção de variedades de negociação, escolher variedades com boa liquidez e maior volatilidade.

  6. Ajustar o ciclo de tempo de negociação para as características do mercado de diferentes variedades

Resumir

Esta estratégia utiliza vários indicadores para avaliar as tendências, abrir posições quando as tendências são claras e definir um stop loss para controlar o movimento do mercado e obter um retorno ideal, garantindo um certo lucro. Otimizando os parâmetros e adicionando outros indicadores auxiliares, pode aumentar ainda mais a estabilidade e o nível de lucro da estratégia.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © exlux99

//@version=4
strategy(title = "Crypto Scalper", overlay = true,  pyramiding=1,initial_capital = 100, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0.03)
len = input(60, minval=1, title="Length EMA")
src = input(close, title="Source")
out = ema(src, len)
//
fast_length = input(title="Fast Length MACD", type=input.integer, defval=12)
slow_length = input(title="Slow Length MACD", type=input.integer, defval=26)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Oscillator MA Type MACD", type=input.string, defval="EMA", options=["SMA", "EMA"])
sma_signal = input(title="Signal Line MA Type MACD", type=input.string, defval="EMA", options=["SMA", "EMA"])

// Calculating
fast_ma = sma_source == "SMA" ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source == "SMA" ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal == "SMA" ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal


start = input(0.02)
increment = input(0.02)
maximum = input(0.2)
var bool uptrend = na
var float EP = na
var float SAR = na
var float AF = start
var float nextBarSAR = na
if bar_index > 0
	firstTrendBar = false
	SAR := nextBarSAR
	if bar_index == 1
		float prevSAR = na
		float prevEP = na
		lowPrev = low[1]
		highPrev = high[1]
		closeCur = close
		closePrev = close[1]
		if closeCur > closePrev
			uptrend := true
			EP := high
			prevSAR := lowPrev
			prevEP := high
		else
			uptrend := false
			EP := low
			prevSAR := highPrev
			prevEP := low
		firstTrendBar := true
		SAR := prevSAR + start * (prevEP - prevSAR)
	if uptrend
		if SAR > low
			firstTrendBar := true
			uptrend := false
			SAR := max(EP, high)
			EP := low
			AF := start
	else
		if SAR < high
			firstTrendBar := true
			uptrend := true
			SAR := min(EP, low)
			EP := high
			AF := start
	if not firstTrendBar
		if uptrend
			if high > EP
				EP := high
				AF := min(AF + increment, maximum)
		else
			if low < EP
				EP := low
				AF := min(AF + increment, maximum)
	if uptrend
		SAR := min(SAR, low[1])
		if bar_index > 1
			SAR := min(SAR, low[2])
	else
		SAR := max(SAR, high[1])
		if bar_index > 1
			SAR := max(SAR, high[2])
	nextBarSAR := SAR + AF * (EP - SAR)

tplong=input(0.245, step=0.005)
sllong=input(1.0, step=0.005)
tpshort=input(0.055, step=0.005)
slshort=input(0.03, step=0.005)

if (uptrend and hist >0 and close < out)
	strategy.entry("short", strategy.short, stop=nextBarSAR, comment="short")
	strategy.exit("short_tp/sl", "short", profit=close * tpshort / syminfo.mintick, loss=close * slshort / syminfo.mintick, comment='SHORT EXIT',  alert_message = 'closeshort')
if (not uptrend and hist <0 and close > out)
	strategy.entry("long", strategy.long, stop=nextBarSAR, comment="long")
	strategy.exit("short_tp/sl", "long", profit=close * tplong / syminfo.mintick, loss=close * sllong / syminfo.mintick, comment='LONG EXIT',  alert_message = 'closelong')