اس حکمت عملی میں تکنیکی اشارے STC، Moving Average MA اور Average True Range ATR کو یکجا کیا گیا ہے تاکہ رجحانات کا اندازہ لگایا جا سکے اور نسبتاً مستحکم رجحان ٹریکنگ ٹریڈنگ کو نافذ کیا جا سکے۔
ایس ٹی سی اشارے رجحان کی تبدیلی کا جائزہ لیتا ہے۔ یہ تیز لائن کو سست لائن سے کم کرتا ہے ، پھر ثانوی ہموار کرنے کا عمل کرتا ہے ، مستقل رجحان سگنل بناتا ہے۔ خریدنے کا اشارہ اس وقت آتا ہے جب اشارے 0 محور سے اوپر اور فروخت کا اشارہ 0 محور سے نیچے عبور کرتا ہے۔
حرکت پذیر اوسط ایم اے رجحان کی سمت کا اندازہ کرتا ہے۔ جب اسٹاک کی قیمت ایم اے سے اوپر ہوتی ہے تو ، یہ ایک اپ ٹرینڈ کا اشارہ کرتا ہے ، جس سے طویل پوزیشن ہولڈنگ سگنل ملتا ہے۔ جب قیمت ایم اے سے نیچے ہوتی ہے تو ، یہ نیچے کی طرف اشارہ کرتی ہے ، جس سے مختصر پوزیشن ہولڈنگ سگنل ملتا ہے۔
اے ٹی آر اشارے اسٹاپ نقصان اور منافع حاصل کرنے کا تعین کرتا ہے۔ اے ٹی آر متحرک طور پر اسٹاپ نقصان کو ایڈجسٹ کرسکتا ہے اور مارکیٹ کی اتار چڑھاؤ کی بنیاد پر منافع پوائنٹس لے سکتا ہے۔ اور اے ٹی آر خود ٹریڈنگ کی سمت کے لئے ایک سگنل کے طور پر کام کرتا ہے ، جو اوپر کی طرف بڑھتا ہے اور نیچے کی طرف گرتا ہے۔
یہ حکمت عملی ایس ٹی سی سگنلز کو انٹری کے لئے اہم وقت کے طور پر لیتی ہے ، ایم اے کو معاون رجحان فیصلے کے طور پر ، اور اے ٹی آر کو اسٹاپ نقصان اور منافع حاصل کرنے کے لئے استعمال کرتی ہے۔ جب ایس ٹی سی خرید کا اشارہ دیتا ہے ، اگر ایم اے بھی اپ ٹرینڈ دکھاتا ہے اور اے ٹی آر بڑھتا ہے تو ، یہ طویل پوزیشن کھولتا ہے۔ جب ایس ٹی سی فروخت کا اشارہ دیتا ہے ، اگر ایم اے نیچے کا رجحان دکھاتا ہے اور اے ٹی آر گرتا ہے تو ، یہ مختصر پوزیشن کھولتا ہے۔
اس حکمت عملی میں رجحانات اور الٹ پوائنٹس کا اندازہ کرنے کے لئے متعدد اشارے شامل ہیں ، جس سے تجارتی سگنلز کی درستگی میں بہتری آتی ہے۔
ایس ٹی سی الٹ سگنل پکڑ سکتا ہے اور رجحانات میں پھنسنے سے بچ سکتا ہے۔ ایم اے غیر یقینی الٹ سگنل کو فلٹر کرتا ہے تاکہ مرکزی رجحان کی پیروی کو یقینی بنایا جاسکے۔
اے ٹی آر متحرک سٹاپ نقصان اور منافع لے لیتا ہے جو مارکیٹ کی اتار چڑھاؤ کی بنیاد پر ہوتا ہے، جس سے بڑے نقصانات سے بچنا ہوتا ہے۔ اور اے ٹی آر رجحان کے فیصلے کے لیے ایک معاون سگنل کے طور پر کام کرتا ہے۔
متعدد اشارے کا امتزاج مضبوط رجحان کی پیروی کرنے کی صلاحیت تشکیل دیتا ہے۔ تاریخی بیک ٹسٹ نسبتا stable مستحکم منافع دکھاتے ہیں۔
ایس ٹی سی میں وقت کی تاخیر ہوتی ہے، جس سے قیمت کی تبدیلی کے لئے بہترین وقت کی کمی ہوسکتی ہے۔
ایم اے شدید قیمتوں میں اتار چڑھاؤ کے دوران تاخیر کا شکار ہوتا ہے ، جو غلط سگنل پیدا کرسکتا ہے۔
اے ٹی آر اسٹاپ نقصان سیکنڈوں میں لگ سکتا ہے۔ اے ٹی آر ضرب کو بڑی رجحانات کے دوران نرم کرنا چاہئے ، یا عارضی طور پر غیر فعال کرنا چاہئے۔
زیادہ اشارے کا مطلب ہے کہ اسٹاپ نقصان کو مارنے کے امکانات زیادہ ہیں۔ غیر ضروری اسٹاپ نقصان سے بچنے کے لئے پیرامیٹرز کو ایڈجسٹ کیا جانا چاہئے۔
STC پیرامیٹرز کو ایڈجسٹ کرنے کے لئے تیزی سے ردعمل کے مجموعے کو تلاش کرنے کے لئے.
بہتر رجحان ٹریکنگ کے لئے ایم اے مدت پیرامیٹر کو بہتر بنائیں.
مختلف ATR ضربوں کے ٹیسٹ اثرات.
بہتر میچ کے لیے ایس ٹی سی کو دوسرے اشارے سے تبدیل کرنے کی کوشش کریں۔
کثیر پیرامیٹر آٹو اصلاح کے لئے مشین لرننگ الگورتھم متعارف کرانے.
بڑے سائیکل رجحانات پر غور کریں اور مختلف مراحل کو ممتاز کریں۔
ایس ٹی سی ایم اے اے ٹی آر حکمت عملی مستحکم رجحان ٹریکنگ ٹریڈنگ کے لئے رجحان الٹ پوائنٹس پر قبضہ کرنے کے لئے 3 اشارے کو یکجا کرتی ہے۔ اشارے کے مجموعے غلط سگنل کو فلٹر کرتے ہیں اور اسٹاپ نقصان / منافع حاصل کرنے کے ساتھ خطرات کو کنٹرول کرتے ہیں۔ اس میں مضبوط استحکام اور استحکام ہے۔ پیرامیٹر کی اصلاح اور الگورتھم کے تعارف کے ذریعے مزید بہتری حاصل کی جاسکتی ہے۔ مجموعی طور پر یہ ایک قابل اعتماد اور اعتدال پسند حکمت عملی کا انتخاب ہے۔
/*backtest start: 2023-09-16 00:00:00 end: 2023-10-16 00:00:00 period: 4h basePeriod: 15m 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/ // © Romedius //@version=5 strategy("My Strategy", overlay=true, margin_long=100, margin_short=100) // STC EEEEEE=input(12,"Length",group="STC") BBBB=input(26,"FastLength",group="STC") BBBBB=input(50,"SlowLength",group="STC") AAAA(BBB, BBBB, BBBBB) => fastMA = ta.ema(BBB, BBBB) slowMA = ta.ema(BBB, BBBBB) AAAA = fastMA - slowMA AAAA AAAAA(EEEEEE, BBBB, BBBBB) => //AAA=input(0.5) var AAA = 0.5 var CCCCC = 0.0 var DDD = 0.0 var DDDDDD = 0.0 var EEEEE = 0.0 BBBBBB = AAAA(close,BBBB,BBBBB) CCC = ta.lowest(BBBBBB, EEEEEE) CCCC = ta.highest(BBBBBB, EEEEEE) - CCC CCCCC := (CCCC > 0 ? ((BBBBBB - CCC) / CCCC) * 100 : nz(CCCCC[1])) DDD := (na(DDD[1]) ? CCCCC : DDD[1] + (AAA * (CCCCC - DDD[1]))) DDDD = ta.lowest(DDD, EEEEEE) DDDDD = ta.highest(DDD, EEEEEE) - DDDD DDDDDD := (DDDDD > 0 ? ((DDD - DDDD) / DDDDD) * 100 : nz(DDDDDD[1])) EEEEE := (na(EEEEE[1]) ? DDDDDD : EEEEE[1] + (AAA * (DDDDDD - EEEEE[1]))) EEEEE mAAAAA = AAAAA(EEEEEE,BBBB,BBBBB) stc = mAAAAA > mAAAAA[1] ? true : false stc_sig = stc == true and stc[1] == false ? 1 : stc == false and stc[1] == true ? -1 : 0 stc_long = stc_sig == 1 stc_short = stc_sig == -1 // STC end // ATR stops nATRPeriod = input(5,group="ATR Stops") nATRMultip = input(3.5,group="ATR Stops") xATR = ta.atr(nATRPeriod) nLoss = nATRMultip * xATR xATRTrailingStop = 0.0 xATRTrailingStop := close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0) ? math.max(nz(xATRTrailingStop[1]), close - nLoss) : close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0) ? math.min(nz(xATRTrailingStop[1]), close + nLoss) : close > nz(xATRTrailingStop[1], 0) ? close - nLoss : close + nLoss pos = 0 pos := close[1] < nz(xATRTrailingStop[1], 0) and close > nz(xATRTrailingStop[1], 0) ? 1 : close[1] > nz(xATRTrailingStop[1], 0) and close < nz(xATRTrailingStop[1], 0) ? -1 : nz(pos[1], 0) atr_sig = pos == -1 ? false : true // ATR stops end // ma ma_len = input(200, title="MA Length", group="Moving Average") ma = ta.sma(close, 200) ma_sig = close < ma ? false : true // ma end // strategy entries tp_mult = input(2, title="Take Profit ATR Multiplier", group="Strategy") sl_mult = input(1, title="Stop Loss ATR Multiplier", group="Strategy") early_stop = input(true, title="Close position when ATR changes color") atr_stop = if close < xATRTrailingStop close - (close - xATRTrailingStop) * sl_mult else close + (xATRTrailingStop - close) * sl_mult longCondition = atr_sig == true and stc_sig == 1 and ma_sig == true shortCondition = atr_sig == false and stc_sig == -1 and ma_sig == false if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Exit Long", "Long", limit=close + xATR * tp_mult, stop=atr_stop) else if atr_sig == false and early_stop strategy.close("Long") if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Exit Short", "Short", limit=close - xATR * tp_mult, stop=atr_stop) else if atr_sig == true and early_stop strategy.close("Short") // plot stuff atr_color = pos == -1 ? color.red: pos == 1 ? color.green : color.blue plot(atr_stop, title="ATR Stop", color=atr_color) ma_color = ma_sig ? color.green : color.red plot(ma, title="Moving Average", color=ma_color) stc_color = stc_long ? color.green : color.red plotshape(stc_long, style=shape.triangleup, color=stc_color, title="STC Long Signal", size=size.tiny) plotshape(stc_short, style=shape.triangledown, color=stc_color, title="STC Short Signal", size=size.tiny) // plot stuff end