
اس حکمت عملی میں ٹریڈنگ سگنل پیدا کرنے کے لئے 2 اشارے استعمال کیے جاتے ہیں: 20⁄20 انڈیکس منتقل اوسط اور اوسط حقیقی اتار چڑھاؤ کی حد الٹ اشارے۔ یہ رجحان کی پیروی اور قلیل مدتی الٹ دو بڑی حکمت عملی کے خیالات کو جوڑتا ہے ، جس کا مقصد الٹ کے مواقع تلاش کرنا ہے۔
اس حکمت عملی کے دو حصے ہیں:
2⁄20 اشاریہ منتقل اوسط۔ یہ حالیہ 20 دن کی اشاریہ منتقل اوسط کا حساب لگاتا ہے ، اور جب قیمت اوپر سے نیچے کی طرف جاتی ہے یا نیچے سے منتقل اوسط پر جاتی ہے تو ، اس سے تجارتی سگنل پیدا ہوتا ہے۔
اوسط حقیقی اتار چڑھاو کی حد الٹ اشارے. یہ قیمت کی اوسط حقیقی اتار چڑھاو کی حد پر مبنی ہے اور اس کی روک تھام کی حد کو توڑنے پر سگنل دیتا ہے۔ یہاں 3.5 گنا اے ٹی آر کو روک تھام کی حد کے طور پر استعمال کیا گیا ہے۔
یہ حکمت عملی دونوں سگنلز کو مربوط کرتی ہے۔ جب 2⁄20 ای ایم اے نے ایک کثیر سرخی پیدا کی اور اے ٹی آر نے ایک خالی سرخی پیدا کرنے کے لئے الٹ دیا تو ، خالی کریں۔ جب 2⁄20 ای ایم اے نے ایک خالی سرخی پیدا کی اور اے ٹی آر نے ایک کثیر سرخی پیدا کرنے کے لئے الٹ دیا تو ، زیادہ کریں۔
اس حکمت عملی میں رجحان کی پیروی اور الٹ کے دو نظریات کو یکجا کیا گیا ہے ، جس کا مقصد قیمتوں میں الٹ کے مواقع تلاش کرنا ہے۔ اس کے کچھ فوائد یہ ہیں:
2⁄20 ای ایم اے وسط مدتی رجحانات کی نشاندہی کرتا ہے اور مارکیٹ کے شور سے گمراہ ہونے سے بچتا ہے۔
اے ٹی آر الٹ اشارے قلیل مدتی قیمتوں کے الٹ کو پکڑنے اور الٹ کے مواقع کو پکڑنے میں مدد کرتا ہے۔
ان دونوں سگنلز کو ملا کر ، جب وسط مدتی رجحان میں تبدیلی آتی ہے تو اس کو پہلے سے پکڑ لیا جاسکتا ہے ، جس سے منافع کمانے کے امکانات میں اضافہ ہوتا ہے۔
اے ٹی آر اسٹاپ نقصان کی ترتیب معقول ہے اور اس سے کچھ خطرہ کنٹرول اثر پڑتا ہے۔
اپنی مرضی کے مطابق اے ٹی آر ضارب ، مختلف نسل کی خصوصیات کے مطابق۔
مختلف حالات کے لئے موزوں تجارت یا تجارت کا انتخاب کریں.
اس حکمت عملی میں مندرجہ ذیل خطرات بھی ہیں:
2⁄20 ای ایم اے پیرامیٹر سست ہے ، ممکن ہے کہ شارٹ لائن کا موقع ضائع ہوجائے۔
اے ٹی آر کی روک تھام کو توڑنے کے لئے آسان ہے ، مناسب طریقے سے روک تھام کی جگہ کو نرمی دی جائے۔
ایک ہی اشارے غلط سگنل پیدا کرنے کے لئے آسان ہے، مزید عوامل فلٹرنگ کے ساتھ مل کر کیا جانا چاہئے.
ٹرانزیکشنز کی تعداد پر نظر رکھیں اور بار بار ٹرانزیکشنز سے بچیں
پیرامیٹرز کی اصلاح اور جانچ پڑتال کی ضرورت ہے، اس قسم کے لئے موزوں ہونے کی تصدیق کریں.
فنڈ مینجمنٹ پر سختی سے عمل کریں اور انفرادی خطرے کو کنٹرول کریں۔
یہ حکمت عملی مندرجہ ذیل پہلوؤں سے بہتر بنائی جا سکتی ہے۔
EMA پیرامیٹرز کو ایڈجسٹ کریں اور بہترین پیرامیٹرز کا مجموعہ تلاش کریں
اے ٹی آر ضارب کے سائز کو بہتر بنائیں اور اسٹاپ نقصان کو متوازن کریں
فلٹرنگ کی شرائط میں اضافہ ، جوڑے کی شرح ، اتار چڑھاؤ ، وغیرہ۔
فنڈ مینجمنٹ ماڈیول شامل کریں ، متحرک پوزیشن ایڈجسٹ کریں
اسٹاپ نقصان کی حکمت عملی میں اضافہ کریں ، جیسے Chandelier Exit
مختلف اقسام کے پیرامیٹرز کے اثرات کی جانچ اور بہترین مجموعہ تلاش کریں
مشین لرننگ ماڈل میں شامل ہوں اور بڑے اعداد و شمار سے کارکردگی میں اضافہ کریں
مزید الفا دریافت کرنے کے لئے متعدد ذیلی حکمت عملیوں کا امتزاج
اس حکمت عملی میں دو بڑے نظریات کو مربوط کیا گیا ہے ، جس میں قیمت کی واپسی کو پکڑنے کی کچھ صلاحیت ہے۔ تاہم ، پیرامیٹر کا غلط انتخاب کرنے کا خطرہ بھی موجود ہے۔ اسٹریٹجی کی استحکام اور منافع کو مزید بہتر بنانے کے لئے اسٹاپ نقصان کی حکمت عملی کو بہتر بنانا ، فلٹرنگ کے حالات میں اضافہ کرنا وغیرہ۔
/*backtest
start: 2022-10-27 00:00:00
end: 2023-11-02 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 05/04/2022
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This indicator plots 2/20 exponential moving average. For the Mov
// Avg X 2/20 Indicator, the EMA bar will be painted when the Alert criteria is met.
//
// Second strategy
// Average True Range Trailing Stops Strategy, by Sylvain Vervoort
// The related article is copyrighted material from Stocks & Commodities Jun 2009
// Please, use it only for learning or paper trading. Do not for real trading.
//
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
EMA20(Length) =>
pos = 0.0
xPrice = close
xXA = ta.ema(xPrice, Length)
nHH = math.max(high, high[1])
nLL = math.min(low, low[1])
nXS = nLL > xXA or nHH < xXA ? nLL : nHH
iff_1 = nXS < close[1] ? 1 : nz(pos[1], 0)
pos := nXS > close[1] ? -1 : iff_1
pos
ATRR(nATRPeriod,nATRMultip) =>
pos = 0.0
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:= 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)
pos
strategy(title='Combo 2/20 EMA & Average True Range Reversed', shorttitle='Combo', overlay=true)
var I1 = '●═════ 2/20 EMA ═════●'
Length = input.int(14, minval=1, group=I1)
var I2 = '●═════ Average True Range Reversed ═════●'
nATRPeriod = input.int(5, group=I2)
nATRMultip = input.float(3.5, group=I2)
var misc = '●═════ MISC ═════●'
reverse = input.bool(false, title='Trade reverse', group=misc)
var timePeriodHeader = '●═════ Time Start ═════●'
d = input.int(1, title='From Day', minval=1, maxval=31, group=timePeriodHeader)
m = input.int(1, title='From Month', minval=1, maxval=12, group=timePeriodHeader)
y = input.int(2005, title='From Year', minval=0, group=timePeriodHeader)
StartTrade = time > timestamp(y, m, d, 00, 00) ? true : false
posEMA20 = EMA20(Length)
prePosATRR = ATRR(nATRPeriod,nATRMultip)
iff_1 = posEMA20 == -1 and prePosATRR == -1 and StartTrade ? -1 : 0
pos = posEMA20 == 1 and prePosATRR == 1 and StartTrade ? 1 : iff_1
iff_2 = reverse and pos == -1 ? 1 : pos
possig = reverse and pos == 1 ? -1 : iff_2
if possig == 1
strategy.entry('Long', strategy.long)
if possig == -1
strategy.entry('Short', strategy.short)
if possig == 0
strategy.close_all()
barcolor(possig == -1 ? #b50404 : possig == 1 ? #079605 : #0536b3)