
یہ حکمت عملی اشاریہ کی حرکت پذیری اوسط ((EMA) اور اوسط لہر اشارے ((AO) کی بنیاد پر مارکیٹ کے رجحان کی سمت کا تعین کرتی ہے ، اور خریداری کے اشارے کی تصدیق کے لئے K لائن کی شکل کا استعمال کرتی ہے۔ جب ای ایم اے مارکیٹ کو بڑھتی ہوئی رجحان میں بتاتا ہے ، اے او اشارے مثبت ہے ، اور بیعانہ غوطہ خور شکل ظاہر ہوتی ہے تو حکمت عملی خریدنے کا اشارہ دیتی ہے۔ یہ حکمت عملی صرف زیادہ کام کرتی ہے ، خالی نہیں ہوتی ہے۔ اس کے ساتھ ہی ، حکمت عملی نے خطرے کو کنٹرول کرنے کے لئے ایک اسٹاپ نقصان کی جگہ بھی ترتیب دی ہے۔
اس حکمت عملی کا بنیادی اصول مارکیٹ کے رجحانات کی سمت کا تعین کرنے کے لئے ای ایم اے اور اے او اشارے کا استعمال کرنا ہے ، اور خریداری کے اشارے کی تصدیق کے لئے کے لائن کی شکل کا استعمال کرنا ہے۔ خاص طور پر:
یہ حکمت عملی ای ایم اے ، اے او اور کے لائن فارمیٹس کے ذریعے رجحانات کا فیصلہ کرنے اور تجارتی سگنل پیدا کرنے کی واضح ، آسان لاگو ہونے کی خصوصیت رکھتی ہے۔ اس کے ساتھ ہی ، حکمت عملی خطرے کو کنٹرول کرنے کے لئے اسٹاپ نقصان کا نقطہ طے کرتی ہے۔ تاہم ، اس حکمت عملی میں کچھ حدود بھی ہیں ، جیسے کہ صرف رجحان ساز مارکیٹوں پر لاگو ہوتا ہے ، پیرامیٹرز کے انتخاب کے لئے حساس ہے۔ مستقبل میں ، حکمت عملی کی کارکردگی کو مزید بہتر بنانے کے لئے مزید تکنیکی اشارے شامل کرنے ، اسٹاپ نقصان کی حکمت عملی کو بہتر بنانے ، پوزیشن مینجمنٹ میں شامل کرنے وغیرہ کے ذریعہ حکمت عملی کی کارکردگی کو مزید بہتر بنایا جاسکتا ہے۔
/*backtest
start: 2023-05-23 00:00:00
end: 2024-05-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA & K-Pattern Trend Trading (Long Only)", overlay=true)
// 输入参数
emaLength = input.int(50, title="EMA长度")
aoShortLength = input.int(5, title="AO短期长度")
aoLongLength = input.int(34, title="AO长期长度")
stopLossPct = input.float(2, title="止损百分比") / 100 // 止损百分比
// 计算EMA和AO指标
ema = ta.ema(close, emaLength)
ao = ta.sma(high, aoShortLength) - ta.sma(low, aoLongLength)
// 定义趋势方向
isBullish = close > ema
// 定义K线形态
bullishK = close > open and close[1] < open[1] and open < close[1] and close > high[1] // 看涨吞没形态
// 定义买入信号
longCondition = bullishK and isBullish and ao > 0
// 绘制EMA
plot(ema, title="EMA", color=color.blue)
// 计算止损点
stopLossLevelLong = close * (1 - stopLossPct)
// 策略执行并标注信号
if (longCondition)
strategy.entry("做多", strategy.long)
label.new(bar_index, high, text="买入", style=label.style_label_up, color=color.green, textcolor=color.white)
strategy.exit("止损", from_entry="做多", stop=stopLossLevelLong)