یہ دوہری حرکت پذیر اوسط کراس اوور پر مبنی ایک خودکار تجارتی حکمت عملی کا نظام ہے۔ یہ نظام بنیادی اشارے کے طور پر 9 پیریڈ اور 21 پیریڈ ایکسپونینشل موونگ اوسط (ای ایم اے) کا استعمال کرتا ہے ، جو ان کے کراس اوور کے ذریعہ تجارتی سگنل تیار کرتا ہے۔ اس میں اسٹاپ نقصان اور منافع کمانے کا انتظام شامل ہے ، جس میں ایک بصری انٹرفیس بھی شامل ہے جو تجارتی سگنل اور کلیدی قیمت کی سطحوں کو ظاہر کرتا ہے۔
یہ حکمت عملی تجارتی نظام کی تعمیر کے لئے تیز EMA (9 مدت) اور سست EMA (21 مدت) کا استعمال کرتی ہے۔ جب تیز EMA سست EMA کے اوپر سے گزر جاتا ہے تو لمبے سگنل پیدا ہوتے ہیں ، جبکہ جب تیز EMA سست EMA کے نیچے سے گزر جاتا ہے تو مختصر سگنل پیدا ہوتے ہیں۔ نظام خود بخود ہر تجارت کے لئے پہلے سے طے شدہ فیصد کی بنیاد پر اسٹاپ نقصان اور منافع حاصل کرنے کی سطح طے کرتا ہے۔ پوزیشن سائزنگ فیصد پر مبنی نقطہ نظر کا استعمال کرتا ہے ، جو اکاؤنٹ کی ایکویٹی کے 100٪ تک ڈیفالٹ ہے۔
یہ ایک اچھی طرح سے ڈیزائن کیا گیا ، منطقی طور پر ٹھوس حرکت پذیر اوسط کراس اوور حکمت عملی کا نظام ہے۔ ای ایم اے کراس اوور سگنلز کو رسک مینجمنٹ میکانزم کے ساتھ جوڑ کر ، حکمت عملی رجحان سازی کی منڈیوں میں منافع حاصل کرسکتی ہے۔ جبکہ موروثی خطرات موجود ہیں ، تجویز کردہ اصلاحات حکمت عملی کے استحکام اور وشوسنییتا کو مزید بڑھا سکتی ہیں۔ یہ حکمت عملی خاص طور پر درمیانی سے طویل مدتی رجحانات کو ٹریک کرنے کے لئے موزوں ہے اور مریض تاجروں کے لئے ایک ٹھوس انتخاب کی نمائندگی کرتی ہے۔
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-04 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 // // ██╗ █████╗ ██████╗ ██████╗ ██╗ ██╗ ██╗ // ██║ ██╔══██╗ ██╔═══██╗ ██╔══██╗ ██║ ██║ ██║ // ██║ ███████║ ██║ ██║ ██║ ██║ ██║ ██║ ██║ // ██║ ██╔══██║ ██║ ██║ ██║ ██║ ██║ ██║ ██║ // ███████╗ ██║ ██║ ╚██████╔╝ ██████╔╝ ╚██████╔╝ ██║ // ╚══════╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ // // BTC-EMA做多策略(5分钟确认版) - 作者:LAODUI // 版本:2.0 // 最后更新:2024 // ═══════════════════════════════════════════════════════════════════════════ strategy("EMA Cross Strategy", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100) // 添加策略参数设置 var showLabels = input.bool(true, "显示标签", group="显示设置") var stopLossPercent = input.float(5.0, "止损百分比", minval=0.1, maxval=20.0, step=0.1, group="风险管理") var takeProfitPercent = input.float(10.0, "止盈百分比", step=0.1, group="风险管理") // EMA参数设置 var emaFastLength = input.int(9, "快速EMA周期", minval=1, maxval=200, group="EMA设置") var emaSlowLength = input.int(21, "慢速EMA周期", minval=1, maxval=200, group="EMA设置") // 计算EMA ema_fast = ta.ema(close, emaFastLength) ema_slow = ta.ema(close, emaSlowLength) // 绘制EMA线 plot(ema_fast, "快速EMA", color=color.blue, linewidth=2) plot(ema_slow, "慢速EMA", color=color.red, linewidth=2) // 检测交叉 crossOver = ta.crossover(ema_fast, ema_slow) crossUnder = ta.crossunder(ema_fast, ema_slow) // 格式化时间显示 (UTC+8) utc8Time = time + 8 * 60 * 60 * 1000 timeStr = str.format("{0,date,MM-dd HH:mm}", utc8Time) // 计算止损止盈价格 longStopLoss = strategy.position_avg_price * (1 - stopLossPercent / 100) longTakeProfit = strategy.position_avg_price * (1 + takeProfitPercent / 100) shortStopLoss = strategy.position_avg_price * (1 + stopLossPercent / 100) shortTakeProfit = strategy.position_avg_price * (1 - takeProfitPercent / 100) // 交易逻辑 if crossOver if strategy.position_size < 0 strategy.close("做空") strategy.entry("做多", strategy.long) if showLabels label.new(bar_index, high, text="做多入场\n" + timeStr + "\n入场价: " + str.tostring(close) + "\n止损价: " + str.tostring(longStopLoss) + "\n止盈价: " + str.tostring(longTakeProfit), color=color.green, textcolor=color.white, style=label.style_label_down, yloc=yloc.abovebar) if crossUnder if strategy.position_size > 0 strategy.close("做多") strategy.entry("做空", strategy.short) if showLabels label.new(bar_index, low, text="做空入场\n" + timeStr + "\n入场价: " + str.tostring(close) + "\n止损价: " + str.tostring(shortStopLoss) + "\n止盈价: " + str.tostring(shortTakeProfit), color=color.red, textcolor=color.white, style=label.style_label_up, yloc=yloc.belowbar) // 设置止损止盈 if strategy.position_size > 0 // 多仓止损止盈 strategy.exit("多仓止损止盈", "做多", stop=longStopLoss, limit=longTakeProfit) if strategy.position_size < 0 // 空仓止损止盈 strategy.exit("空仓止损止盈", "做空", stop=shortStopLoss, limit=shortTakeProfit)