
これは,二均線交差信号に基づくスマート取引システムで,リスク管理機能が組み込まれている. システムは,短期および長期のシンプル移動平均 ((SMA)) を使って取引信号を生成し,同時に,リスク管理のためのストップ・ロスとストップ・ストップ機能を統合している. この戦略は,口座資金の動向に応じてポジションの規模を調整するパーセントリスク管理方法を採用し,取引プロセスの自動化とインテリジェンスを実現している.
戦略は以下の基本原則に基づいています.
これは,クラシックな技術分析方法と近代的なリスク管理理念を組み合わせたスマート取引システムである. 動的リスク管理を利用してトレンドの自動化を実行する. システムのいくつかの最適化が必要な場所があるが,全体的な設計理念は先端で,優れた実用価値を有している. 取引者は,実地での使用の前に充分にテストし,特定の市場特性に応じてターゲットに最適化することを推奨する.
/*backtest
start: 2024-06-09 00:00:00
end: 2025-02-19 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=6
strategy("AI Trade Bot with Risk Management", overlay=true)
// Input parameters
shortSMA = input.int(9, title="Short SMA")
longSMA = input.int(21, title="Long SMA")
riskPercent = input.float(1.0, title="Risk Percentage", step=0.1)
// Calculate SMAs
shortSMAValue = ta.sma(close, shortSMA)
longSMAValue = ta.sma(close, longSMA)
// Bullish and Bearish Signals
bullishSignal = ta.crossover(shortSMAValue, longSMAValue)
bearishSignal = ta.crossunder(shortSMAValue, longSMAValue)
// Risk Management
stopLossPercent = riskPercent / 100
takeProfitPercent = stopLossPercent * 2
// Calculate position size based on risk management
riskAmount = strategy.equity * riskPercent / 100
var float buyStopLossPrice = na
var float buyTakeProfitPrice = na
var float sellStopLossPrice = na
var float sellTakeProfitPrice = na
if (bullishSignal)
buyStopLossPrice := close * (1 - stopLossPercent)
buyTakeProfitPrice := close * (1 + takeProfitPercent)
strategy.entry("Buy", strategy.long)
strategy.exit("Take Profit/Stop Loss", from_entry="Buy", limit=buyTakeProfitPrice, stop=buyStopLossPrice)
if (bearishSignal)
sellStopLossPrice := close * (1 + stopLossPercent)
sellTakeProfitPrice := close * (1 - takeProfitPercent)
strategy.entry("Sell", strategy.short)
strategy.exit("Take Profit/Stop Loss", from_entry="Sell", limit=sellTakeProfitPrice, stop=sellStopLossPrice)
// Plot SMAs on the chart
plot(shortSMAValue, color=color.blue, title="Short SMA")
plot(longSMAValue, color=color.red, title="Long SMA")
// Plot Buy/Sell signals on the chart
plotshape(series=bullishSignal, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal", text="BUY")
plotshape(series=bearishSignal, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal", text="SELL")
// Plot Buy Stop Loss and Take Profit levels
plot(buyStopLossPrice, color=color.red, style=plot.style_linebr, linewidth=2, title="Buy Stop Loss")
plot(buyTakeProfitPrice, color=color.green, style=plot.style_linebr, linewidth=2, title="Buy Take Profit")
// Plot Sell Stop Loss and Take Profit levels
plot(sellStopLossPrice, color=color.red, style=plot.style_linebr, linewidth=2, title="Sell Stop Loss")
plot(sellTakeProfitPrice, color=color.green, style=plot.style_linebr, linewidth=2, title="Sell Take Profit")