ایس ٹی سی ایم اے اے ٹی آر انٹیگریٹڈ ٹرینڈ ٹریڈنگ حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-10-17 14:34:10
ٹیگز:

img

جائزہ

اس حکمت عملی میں تکنیکی اشارے STC، Moving Average MA اور Average True Range ATR کو یکجا کیا گیا ہے تاکہ رجحانات کا اندازہ لگایا جا سکے اور نسبتاً مستحکم رجحان ٹریکنگ ٹریڈنگ کو نافذ کیا جا سکے۔

حکمت عملی کا اصول

  1. ایس ٹی سی اشارے رجحان کی تبدیلی کا جائزہ لیتا ہے۔ یہ تیز لائن کو سست لائن سے کم کرتا ہے ، پھر ثانوی ہموار کرنے کا عمل کرتا ہے ، مستقل رجحان سگنل بناتا ہے۔ خریدنے کا اشارہ اس وقت آتا ہے جب اشارے 0 محور سے اوپر اور فروخت کا اشارہ 0 محور سے نیچے عبور کرتا ہے۔

  2. حرکت پذیر اوسط ایم اے رجحان کی سمت کا اندازہ کرتا ہے۔ جب اسٹاک کی قیمت ایم اے سے اوپر ہوتی ہے تو ، یہ ایک اپ ٹرینڈ کا اشارہ کرتا ہے ، جس سے طویل پوزیشن ہولڈنگ سگنل ملتا ہے۔ جب قیمت ایم اے سے نیچے ہوتی ہے تو ، یہ نیچے کی طرف اشارہ کرتی ہے ، جس سے مختصر پوزیشن ہولڈنگ سگنل ملتا ہے۔

  3. اے ٹی آر اشارے اسٹاپ نقصان اور منافع حاصل کرنے کا تعین کرتا ہے۔ اے ٹی آر متحرک طور پر اسٹاپ نقصان کو ایڈجسٹ کرسکتا ہے اور مارکیٹ کی اتار چڑھاؤ کی بنیاد پر منافع پوائنٹس لے سکتا ہے۔ اور اے ٹی آر خود ٹریڈنگ کی سمت کے لئے ایک سگنل کے طور پر کام کرتا ہے ، جو اوپر کی طرف بڑھتا ہے اور نیچے کی طرف گرتا ہے۔

  4. یہ حکمت عملی ایس ٹی سی سگنلز کو انٹری کے لئے اہم وقت کے طور پر لیتی ہے ، ایم اے کو معاون رجحان فیصلے کے طور پر ، اور اے ٹی آر کو اسٹاپ نقصان اور منافع حاصل کرنے کے لئے استعمال کرتی ہے۔ جب ایس ٹی سی خرید کا اشارہ دیتا ہے ، اگر ایم اے بھی اپ ٹرینڈ دکھاتا ہے اور اے ٹی آر بڑھتا ہے تو ، یہ طویل پوزیشن کھولتا ہے۔ جب ایس ٹی سی فروخت کا اشارہ دیتا ہے ، اگر ایم اے نیچے کا رجحان دکھاتا ہے اور اے ٹی آر گرتا ہے تو ، یہ مختصر پوزیشن کھولتا ہے۔

فوائد کا تجزیہ

  1. اس حکمت عملی میں رجحانات اور الٹ پوائنٹس کا اندازہ کرنے کے لئے متعدد اشارے شامل ہیں ، جس سے تجارتی سگنلز کی درستگی میں بہتری آتی ہے۔

  2. ایس ٹی سی الٹ سگنل پکڑ سکتا ہے اور رجحانات میں پھنسنے سے بچ سکتا ہے۔ ایم اے غیر یقینی الٹ سگنل کو فلٹر کرتا ہے تاکہ مرکزی رجحان کی پیروی کو یقینی بنایا جاسکے۔

  3. اے ٹی آر متحرک سٹاپ نقصان اور منافع لے لیتا ہے جو مارکیٹ کی اتار چڑھاؤ کی بنیاد پر ہوتا ہے، جس سے بڑے نقصانات سے بچنا ہوتا ہے۔ اور اے ٹی آر رجحان کے فیصلے کے لیے ایک معاون سگنل کے طور پر کام کرتا ہے۔

  4. متعدد اشارے کا امتزاج مضبوط رجحان کی پیروی کرنے کی صلاحیت تشکیل دیتا ہے۔ تاریخی بیک ٹسٹ نسبتا stable مستحکم منافع دکھاتے ہیں۔

خطرے کا تجزیہ

  1. ایس ٹی سی میں وقت کی تاخیر ہوتی ہے، جس سے قیمت کی تبدیلی کے لئے بہترین وقت کی کمی ہوسکتی ہے۔

  2. ایم اے شدید قیمتوں میں اتار چڑھاؤ کے دوران تاخیر کا شکار ہوتا ہے ، جو غلط سگنل پیدا کرسکتا ہے۔

  3. اے ٹی آر اسٹاپ نقصان سیکنڈوں میں لگ سکتا ہے۔ اے ٹی آر ضرب کو بڑی رجحانات کے دوران نرم کرنا چاہئے ، یا عارضی طور پر غیر فعال کرنا چاہئے۔

  4. زیادہ اشارے کا مطلب ہے کہ اسٹاپ نقصان کو مارنے کے امکانات زیادہ ہیں۔ غیر ضروری اسٹاپ نقصان سے بچنے کے لئے پیرامیٹرز کو ایڈجسٹ کیا جانا چاہئے۔

اصلاح کی ہدایات

  1. STC پیرامیٹرز کو ایڈجسٹ کرنے کے لئے تیزی سے ردعمل کے مجموعے کو تلاش کرنے کے لئے.

  2. بہتر رجحان ٹریکنگ کے لئے ایم اے مدت پیرامیٹر کو بہتر بنائیں.

  3. مختلف ATR ضربوں کے ٹیسٹ اثرات.

  4. بہتر میچ کے لیے ایس ٹی سی کو دوسرے اشارے سے تبدیل کرنے کی کوشش کریں۔

  5. کثیر پیرامیٹر آٹو اصلاح کے لئے مشین لرننگ الگورتھم متعارف کرانے.

  6. بڑے سائیکل رجحانات پر غور کریں اور مختلف مراحل کو ممتاز کریں۔

خلاصہ

ایس ٹی سی ایم اے اے ٹی آر حکمت عملی مستحکم رجحان ٹریکنگ ٹریڈنگ کے لئے رجحان الٹ پوائنٹس پر قبضہ کرنے کے لئے 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

مزید