
Esta estratégia é uma estratégia de acompanhamento de tendências que combina um indicador de volume e um indicador de linha média. Ela usa a média móvel do índice como principal ferramenta de determinação de tendências e, em combinação com o volume de transações elevadas, emite sinais de compra e venda.
Usando 34 EMAs de ciclo como a principal ferramenta de determinação de tendências. Quando o preço sobe em EMAs, é um sinal de otimismo, quando o preço desce em EMAs, é um sinal de desaceleração.
Compare a média móvel de 21 dias do volume de transações com a média mais recente de 1,5 vezes. Se o volume de transações atual é maior que 1,5 vezes a média, é considerado alto.
O sinal de compra é emitido somente quando o preço e a EMA formam uma forca de ouro e são elevados; o sinal de venda é emitido somente quando o preço e a EMA formam uma forca de morte e são elevados.
Configuração de stop loss e stop loss proporções após a abertura da posição.
A análise de fatores como tendências, dinâmicas e controle de risco é mais abrangente e estável.
Usando a EMA para determinar a direção das principais tendências do mercado, é possível acompanhar de forma eficaz as tendências médias e longas.
O FILTER, combinado com o volume de transações elevados, pode ser usado para evitar falsas brechas.
A definição de um Stop Loss Ratio permite um controle eficaz do risco de uma única transação.
A estratégia de manutenção de posições de linha média e longa, isenta de ruído de mercado de alta frequência, estável.
A solução é adicionar a verificação de volume de transação.
A solução é controlar adequadamente o tamanho da posição.
A estratégia de negociação de linha média pode estar atrasada e não conseguir agarrar oportunidades de linha curta. A solução é combinar outros sinais de linha curta.
A solução é definir uma posição de parada apropriada.
Teste os pontos positivos e negativos de diferentes parâmetros do ciclo EMA para encontrar o melhor parâmetro.
Testar o impacto de diferentes parâmetros de stop loss e stop loss na rentabilidade da estratégia e na resistência ao risco.
Tente combinar outros indicadores, como MACD, KDJ e outros, para avaliar a probabilidade de uma linha curta.
Optimizar estratégias de gestão de fundos, tais como controle de posição, stop loss dinâmico e outros métodos.
Esta estratégia é, em geral, uma estratégia de posição de linha média e longa de valor estável. Ela pode acompanhar efetivamente as principais tendências do mercado e usar indicadores de energia quantitativa para filtrar sinais enganosos. Ao mesmo tempo, o risco de controle de negociações individuais é controlado por meio de medidas de parada e parada adequadas.
/*backtest
start: 2023-12-10 00:00:00
end: 2023-12-17 00:00:00
period: 3m
basePeriod: 1m
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/
// © TradingSignalHub
//@version=5
strategy("Di strategy ", overlay=true)
//date setting
fromDay = input(defval = 1, title = "Ngày bắt đầu", group = "Cài đặt thời gian")
fromMonth = input(defval = 1, title = "Tháng bắt đầu", group = "Cài đặt thời gian")
fromYear = input(defval = 2023, title = "Năm bắt đầu", group = "Cài đặt thời gian")
toDay = input(defval = 31, title = "Đến ngày", group = "Cài đặt thời gian")
toMonth = input(defval = 12, title = "Đến tháng", group = "Cài đặt thời gian")
toYear = input(defval = 2033, title = "Đến năm", group = "Cài đặt thời gian")
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond() =>
time >= startDate and time <= finishDate ? true : false
//snr setting
price = close
ema34 = input.int(34, minval=2, title="EMA 34", group = "Cài đặt EMA")
pacC = ta.ema(close,ema34)
pacL = ta.ema(low,ema34)
pacH = ta.ema(high,ema34)
L =plot(pacL, color=color.rgb(3, 139, 251), linewidth=1, title="High EMA 34")
H =plot(pacH, color=color.rgb(3, 137, 247), linewidth=1, title="Low EMA 34")
C =plot(pacC, color=color.rgb(4, 138, 248), linewidth=1, title="Close EMA 34")
fill(L,H, color=color.rgb(33, 149, 243, 85),title="Fill dãi EMA 34")
//EMA full setting
ema89 =ta.ema(close,89)
DIema= ta.ema(close,458)
plot(DIema,title="DI_ema",color=color.rgb(247, 214, 3),linewidth=2)
plot(ema89,title="EMA 89",color=color.orange,linewidth=1)
//ema200= ta.ema(close,200)
//ema610= ta.ema(close,610)
//ema144= ta.ema(close,144)
//ema258= ta.ema(close,258)
//plot(ema200,title="EMA 200",color=color.purple,linewidth=2)
//plot(ema610,title="EMA 610",color=color.white,linewidth=2)
//plot(ema144,title="144Banker",color=color.green,linewidth=1)
//plot(ema258,title="258Banker",color=color.yellow,linewidth=1)
EMAbuy = ta.crossover(price, DIema)
EMAsell = ta.crossunder(price, DIema)
//volume setting
vol = (volume)
length = input(21, "Đường Trung Bình Vol", group = "Cài đặt Volume" )
div = input(1.5, "Mức trung bình", group = "Cài đặt Volume" )
up = close > open
down = open>close
Volhigh = volume> (ta.ema(volume, length)*div)
//Cài đặt lệnh
longCondition = EMAbuy and Volhigh
if time_cond()
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = EMAsell and Volhigh
if time_cond()
if (shortCondition)
strategy.entry("Sell", strategy.short)
stopPer = input.float(1.0, title="Stop Loss %", group = "Cài đặt TP & SL %" ) / 100
takePer = input.float(2.0, title="Take Profit %", group = "Cài đặt TP & SL %" ) / 100
// Determine where you've entered and in what direction
longStop = strategy.position_avg_price * (1 - stopPer)
shortStop = strategy.position_avg_price * (1 + stopPer)
shortTake = strategy.position_avg_price * (1 - takePer)
longTake = strategy.position_avg_price * (1 + takePer)
if strategy.position_size > 0
strategy.exit(id="Đóng Long", stop=longStop, limit=longTake)
if strategy.position_size < 0
strategy.exit(id="Đóng Sell", stop=shortStop, limit=shortTake)
alertcondition(longCondition, title = "Tín hiệu BUY", message = "Tín hiệu BUY")
alertcondition(shortCondition, title = "Tín hiệu SELL", message = "Tín hiệu SELL")
//PLOT FIXED SLTP LINE
//plotshape(strategy.position_size > 0 ? longStop : na, shape.labelup, color=color.rgb(34, 249, 6, 50), linewidth=1, title="Long SL")
//plot(strategy.position_size < 0 ? shortStop : na, style=plot.style_circles, color=color.rgb(250, 8, 8, 50), linewidth=1, title="Short SL")
//plot(strategy.position_size > 0 ? longTake : na, style=plot.style_linebr, color=color.rgb(59, 248, 7), linewidth=1, title="Long TP")
//plot(strategy.position_size < 0 ? shortTake : na, style=plot.style_linebr, color=color.rgb(247, 7, 7), linewidth=1, title="Short TP")