
Ichimoku Entries là một chiến lược định lượng sử dụng chỉ số biểu đồ đám mây Ichimoku để xác định hướng xu hướng và kết hợp với các chỉ số Brin và RSI để phát tín hiệu giao dịch. Chiến lược này chủ yếu dựa trên đường xoay mười và đường cơ sở của các cái chết của vàng và vàng, để xác định hiện đang ở thị trường nhiều đầu hoặc thị trường trống, do đó tạo ra tín hiệu nhập cảnh cho vị trí dài và ngắn.
Chiến lược này chủ yếu sử dụng hai đường quan trọng của biểu đồ đám mây Ichimoku là đường xoay mười và đường cơ sở. đường xoay mười là trung bình của giá cao nhất và giá thấp nhất trong 9 ngày gần đây, đại diện cho xu hướng ngắn hạn. đường cơ sở là trung bình của giá cao nhất và giá thấp nhất trong 26 ngày gần đây, đại diện cho xu hướng trung hạn.
Ngoài biểu đồ đám mây Ichimoku, chiến lược này cũng phát hiện các chỉ số Brin và RSI để phát tín hiệu giao dịch. Chỉ khi giá đóng cửa phá vỡ Brin lên đường hoặc xuống đường, giá sẽ cho thấy sự bất thường; kết hợp với chỉ số RSI để xác định xem giá có nằm trong khu vực quá mua quá bán hay không, lọc ra một số vụ phá vỡ giả để tạo ra tín hiệu vào.
Về logic thoát ra, chiến lược đánh giá liệu phá vỡ vòng Boolean có thành công hay không, và liệu chỉ số môi trường giao dịch TPO có vượt qua trục 0 hay không, để xác định lợi nhuận hay dừng lỗ thoát ra.
Lợi thế lớn nhất của chiến lược này là sử dụng định hướng xu hướng và biến động bất thường để xác định hướng giao dịch. Biểu đồ đám mây Ichimoku có thể xác định xu hướng rõ ràng, và Brin có thể nắm bắt biến động bất thường. Chỉ số RSI có thể lọc hiệu quả các đợt phá vỡ giả. Sử dụng nhiều chỉ số để đảm bảo tín hiệu giao dịch đáng tin cậy hơn. Ngoài ra, chiến lược này thêm vào logic dừng lỗ và dừng, có thể khóa lợi nhuận và tránh tổn thất lớn.
Mặc dù có lợi thế trong việc nhận ra xu hướng và biến động bất thường, chiến lược này vẫn có một số rủi ro. Do theo dõi xu hướng giao dịch, do đó, có nhiều tín hiệu giả trong tình huống xung đột. Ngoài ra, cài đặt tham số không đúng cũng có thể ảnh hưởng đến hiệu suất của chiến lược.
Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:
Chiến lược Ichimoku Entries là một chiến lược theo dõi xu hướng kết hợp nhiều chỉ số. Nó đồng thời đánh giá xu hướng xu hướng và giá bất thường, nắm bắt nhịp độ thị trường một cách đáng tin cậy. Mặc dù vẫn còn chỗ để cải thiện, nhưng nói chung là một chiến lược giao dịch định lượng có thể kiểm soát rủi ro và ổn định.
/*backtest
start: 2023-01-30 00:00:00
end: 2024-01-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("ichi strategy", overlay=true)
// Input parameters
rsiLength = input(14, title="RSI Length")
bbLength = input(20, title="Bollinger Bands Length")
bbMultiplier = input(2, title="Bollinger Bands Multiplier")
stopLossPct = input(1, title="Stop Loss Percentage")
takeProfitPct = input(2, title="Take Profit Percentage")
// Calculate Ichimoku Cloud components
tenkan = ta.sma(high + low, 9) / 2
kijun = ta.sma(high + low, 26) / 2
senkouA = (tenkan + kijun) / 2
senkouB = ta.sma(high + low, 52) / 2
// Bollinger Bands
basis = ta.sma(close, bbLength)
upperBB = basis + bbMultiplier * ta.stdev(close, bbLength)
lowerBB = basis - bbMultiplier * ta.stdev(close, bbLength)
// RSI
rsiValue = ta.rsi(close, rsiLength)
// Trade Proximity Oscillator
length = input(14, title="Channels Length")
multiplier = input(2, title="Channels Multiplier")
atr_length = input(14, title="ATR Length")
threshold_percentage = input(1.5, title="Threshold Percentage (%)")
ma = ta.sma(close, length)
std_dev = ta.stdev(close, length)
upper_band = ma + multiplier * std_dev
lower_band = ma - multiplier * std_dev
distance_upper = close - upper_band
distance_lower = lower_band - close
atr_value = ta.atr(atr_length)
threshold = atr_value * threshold_percentage
oscillator = distance_upper - distance_lower
// Strategy logic
longCondition = close > upperBB and tenkan > kijun and ta.crossover(close, basis) and rsiValue < 70
shortCondition = close < lowerBB and tenkan < kijun and ta.crossunder(close, basis) and rsiValue > 30
strategy.entry("Long", strategy.long, when = longCondition)
strategy.entry("Short", strategy.short, when = shortCondition)
// Exit logic
longExitCondition = close < upperBB and ta.crossover(oscillator, 0)
shortExitCondition = close > lowerBB and ta.crossunder(oscillator, 0)
strategy.exit("Take Profit/Stop Loss", from_entry="Long", loss=close - close * stopLossPct / 100, profit=close + close * takeProfitPct / 100, when = longExitCondition)
strategy.exit("Take Profit/Stop Loss", from_entry="Short", loss=close + close * stopLossPct / 100, profit=close - close * takeProfitPct / 100, when = shortExitCondition)
// Plotting
plot(senkouA, color=color.green, title="Senkou A")
plot(senkouB, color=color.red, title="Senkou B")
plot(upperBB, color=color.blue, title="Upper Bollinger Band")
plot(lowerBB, color=color.blue, title="Lower Bollinger Band")
// Additional Plots
plot(tenkan, color=color.orange, title="Tenkan")
plot(kijun, color=color.purple, title="Kijun")