
Chiến lược này sử dụng nhiều chỉ số kỹ thuật kết hợp với nhau, để thực hiện một chiến lược giao dịch ngắn toàn năng. Chiến lược này có nhiều phương thức giao dịch như theo dõi xu hướng, phá vỡ giao dịch và đảo ngược giao dịch, có thể phù hợp với hầu hết các môi trường thị trường, là một chiến lược ngắn phổ biến và thực tế.
Kết hợp các chiến lược con trên, chiến lược này có thể nắm bắt xu hướng của chu kỳ trung gian và định hướng của xu hướng tổng thể dựa trên chu kỳ dài, để thực hiện chiến lược giao dịch tổng quát.
Ưu điểm lớn nhất của chiến lược này là sử dụng nhiều chỉ số kỹ thuật để giao dịch kết hợp, có thể thực hiện nhiều phương thức giao dịch đồng thời như theo dõi xu hướng, giao dịch đảo ngược, giao dịch phá vỡ, rất phổ biến và phù hợp với hầu hết các môi trường thị trường.
Các lợi thế chính của chiến lược này là:
Mặc dù chiến lược này kết hợp nhiều chỉ số, thực hiện chiến lược giao dịch phổ biến. Tuy nhiên, giao dịch có một số rủi ro, các điểm rủi ro chính như sau:
Chúng ta có thể tối ưu hóa các rủi ro như sau:
Theo phân tích trên, chiến lược này có thể được tối ưu hóa theo các hướng sau:
Chiến lược này sử dụng nhiều chỉ số để giao dịch kết hợp, thực hiện sự kết hợp hữu cơ của nhiều phương thức giao dịch theo xu hướng, phá vỡ giao dịch và đảo ngược giao dịch, là một chiến lược giao dịch ngắn gọn rất linh hoạt và phổ biến. Ưu điểm lớn nhất của chiến lược này là thích ứng rộng rãi, có thể được sử dụng trong hầu hết các môi trường thị trường, thuộc một loại tư duy chiến lược phổ biến. Tất nhiên, bất kể giao dịch có một số rủi ro, chúng ta có thể tối ưu hóa chiến lược từ việc giới thiệu các chỉ số ổn định hơn, tăng mức dừng lỗ, tối ưu hóa tham số, ứng dụng máy học và nhiều khía cạnh khác để hiệu quả của chiến lược này có thể được nâng cao hơn nữa.
/*backtest
start: 2022-12-13 00:00:00
end: 2023-12-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
//╭╮╱╱╭╮╭╮╱╱╭╮
//┃╰╮╭╯┃┃┃╱╱┃┃
//╰╮┃┃╭┻╯┣╮╭┫╰━┳╮╭┳━━╮
//╱┃╰╯┃╭╮┃┃┃┃╭╮┃┃┃┃━━┫
//╱╰╮╭┫╰╯┃╰╯┃╰╯┃╰╯┣━━┃
//╱╱╰╯╰━━┻━━┻━━┻━━┻━━╯
//╭━━━┳╮╱╱╱╱╱╱╱╭╮
//┃╭━╮┃┃╱╱╱╱╱╱╱┃┃
//┃┃╱╰┫╰━┳━━┳━╮╭━╮╭━━┫┃
//┃┃╱╭┫╭╮┃╭╮┃╭╮┫╭╮┫┃━┫┃
//┃╰━╯┃┃┃┃╭╮┃┃┃┃┃┃┃┃━┫╰╮
//╰━━━┻╯╰┻╯╰┻╯╰┻╯╰┻━━┻━╯
//━╯
// http://www.vdubus.co.uk/
strategy(title='Vdub FX SniperVX3 / Strategy v3', shorttitle='Vdub_FX_SniperVX3_Strategy', overlay=true, pyramiding=0, initial_capital=1000, currency=currency.USD)
//Candle body resistance Channel-----------------------------//
len = 34
src = input(close, title="Candle body resistance Channel")
out = sma(src, len)
last8h = highest(close, 13)
lastl8 = lowest(close, 13)
bearish = cross(close,out) == 1 and falling(close, 1)
bullish = cross(close,out) == 1 and rising(close, 1)
channel2=input(false, title="Bar Channel On/Off")
ul2=plot(channel2?last8h:last8h==nz(last8h[1])?last8h:na, color=black, linewidth=1, style=linebr, title="Candle body resistance level top", offset=0)
ll2=plot(channel2?lastl8:lastl8==nz(lastl8[1])?lastl8:na, color=black, linewidth=1, style=linebr, title="Candle body resistance level bottom", offset=0)
//fill(ul2, ll2, color=black, transp=95, title="Candle body resistance Channel")
//-----------------Support and Resistance
RST = input(title='Support / Resistance length:', defval=10)
RSTT = valuewhen(high >= highest(high, RST), high, 0)
RSTB = valuewhen(low <= lowest(low, RST), low, 0)
RT2 = plot(RSTT, color=RSTT != RSTT[1] ? na : red, linewidth=1, offset=+0)
RB2 = plot(RSTB, color=RSTB != RSTB[1] ? na : green, linewidth=1, offset=0)
//--------------------Trend colour ema------------------------------------------------//
src0 = close, len0 = input(13, minval=1, title="EMA 1")
ema0 = ema(src0, len0)
direction = rising(ema0, 2) ? +1 : falling(ema0, 2) ? -1 : 0
plot_color = direction > 0 ? lime: direction < 0 ? red : na
plot(ema0, title="EMA", style=line, linewidth=1, color = plot_color)
//-------------------- ema 2------------------------------------------------//
src02 = close, len02 = input(21, minval=1, title="EMA 2")
ema02 = ema(src02, len02)
direction2 = rising(ema02, 2) ? +1 : falling(ema02, 2) ? -1 : 0
plot_color2 = direction2 > 0 ? lime: direction2 < 0 ? red : na
plot(ema02, title="EMA Signal 2", style=line, linewidth=1, color = plot_color2)
//=============Hull MA//
show_hma = input(false, title="Display Hull MA Set:")
hma_src = input(close, title="Hull MA's Source:")
hma_base_length = input(8, minval=1, title="Hull MA's Base Length:")
hma_length_scalar = input(5, minval=0, title="Hull MA's Length Scalar:")
hullma(src, length)=>wma(2*wma(src, length/2)-wma(src, length), round(sqrt(length)))
plot(not show_hma ? na : hullma(hma_src, hma_base_length+hma_length_scalar*6), color=black, linewidth=2, title="Hull MA")
//============ signal Generator ==================================//
Piriod=input('720')
ch1 = request.security(syminfo.tickerid, Piriod, open)
ch2 = request.security(syminfo.tickerid, Piriod, close)
longCondition = crossover(request.security(syminfo.tickerid, Piriod, close),request.security(syminfo.tickerid, Piriod, open))
if (longCondition)
strategy.entry("BUY", strategy.long)
shortCondition = crossunder(request.security(syminfo.tickerid, Piriod, close),request.security(syminfo.tickerid, Piriod, open))
if (shortCondition)
strategy.entry("SELL", strategy.short)
///////////////////////////////////////////////////////////////////////////////////////////