
Chiến lược dừng nhiều lần dừng nhiều lần dừng của ngư dân xoay EMA kết hợp với chỉ số EMA và tín hiệu xoay ngư dân tùy chỉnh để thực hiện giao dịch theo xu hướng. Chiến lược này tạo ra tín hiệu mua khi EMA ngắn hạn vượt qua EMA dài hạn và tín hiệu xoay ngư dân lớn hơn 0. Chiến lược này thiết lập hai điểm dừng và một điểm dừng động để khóa lợi nhuận và kiểm soát rủi ro.
Chiến lược này chủ yếu dựa trên hai chỉ số kỹ thuật:
Một tín hiệu mua được tạo ra khi EMA ngắn vượt qua EMA dài. Ngoài ra, đường tín hiệu quay của ngư dân cũng phải lớn hơn 0, cho thấy hiện tại đang trong xu hướng tăng lên.
Các quy tắc dừng và dừng lỗ như sau:
Chiến lược này có thể được tối ưu hóa bằng cách điều chỉnh các tham số như chu kỳ EMA, chu kỳ tín hiệu chuyển hướng của ngư dân và chu kỳ ATR.
Chiến lược này kết hợp các chỉ số theo dõi xu hướng và các chỉ số quản lý rủi ro, có những ưu điểm sau:
Chiến lược này cũng có một số rủi ro:
Những rủi ro này có thể được giảm bớt bằng cách tối ưu hóa các tham số, kết hợp các chỉ số khác và can thiệp nhân tạo.
Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:
Bằng cách thử nghiệm các thiết lập tham số khác nhau và kết hợp các chỉ số, hiệu suất chiến lược có thể được nâng cao liên tục.
Ngư dân chuyển sang chiến lược dừng nhiều lần nhiều lần của EMA, kết hợp các lợi thế của theo dõi xu hướng và quản lý rủi ro, là một chiến lược có tiềm năng để tối ưu hóa chứng minh dài hạn. Có rất nhiều không gian tối ưu hóa cho việc điều chỉnh tham số và kết hợp các chỉ số, hy vọng bạn sẽ có được lợi nhuận vượt trội ổn định trong chứng minh thực tế!
/*backtest
start: 2022-12-29 00:00:00
end: 2024-01-04 00:00:00
period: 1d
basePeriod: 1h
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/
// © Eliebf13
//@version=4
strategy("GDAX EMA & Blackflag FTS Strategy with Multiple Take Profits and Dynamic Stop Loss", overlay=true)
// Input parameters for Blackflag FTS
fts_length = input(14, title="Blackflag FTS Length")
atr_length = input(14, title="ATR Length")
// GDAX EMA calculation
short = ema(close, 12)
long = ema(close, 26)
// Calculate Blackflag FTS signal line manually
up = 0.0
down = 0.0
for i = 0 to fts_length - 1
up := up + (high[i] - low[i])
down := down + (high[i] - low[i])
fts_value = down == 0 ? 100 : 100 - (100 / (1 + (up / down)))
// Buy condition: GDAX EMA crossover and Blackflag FTS signal above zero
buy_condition = crossover(short, long) and fts_value > 0
// ATR calculation
atr_value = atr(atr_length)
// Calculate Stop Loss and Take Profit levels
stop_loss_level = close - atr_value
take_profit_level1 = close + 2 * atr_value
take_profit_level2 = close + 3 * atr_value
// Sell condition: GDAX EMA crossunder or Blackflag FTS signal below zero
sell_condition = crossunder(short, long) or fts_value < 0
// Strategy orders with Multiple Take Profits and Dynamic Stop Loss
strategy.entry("Buy", strategy.long, when = buy_condition)
// Calculate position size for 50% closure at each take profit level
position_size = strategy.position_size
target_position_size1 = position_size * 0.5
target_position_size2 = position_size * 1
strategy.exit("Take Profit 1", from_entry="Buy", loss=close, profit=take_profit_level1, qty=target_position_size1)
strategy.exit("Take Profit 2/Move Stop Loss", from_entry="Buy", loss=close, profit=take_profit_level2, qty=target_position_size2)
// Plot GDAX EMA lines
plot(short, color=#6f92ce, linewidth=2, title="Ema 12")
plot(long, color=#e08937, linewidth=2, title="Ema 26")
// Plot Blackflag FTS signal
plot(fts_value, color=color.blue, title="Blackflag FTS Signal")
// Plot buy and sell signals on the chart
plotshape(series=buy_condition, location=location.belowbar, color=color.green, style=shape.triangleup, title="Buy Signal")
plotshape(series=sell_condition, location=location.abovebar, color=color.red, style=shape.triangledown, title="Sell Signal")