متحرک چینل پیش رفت کی حکمت عملی پر مبنی


تخلیق کی تاریخ: 2024-02-27 15:15:07 آخر میں ترمیم کریں: 2024-02-27 15:15:07
کاپی: 0 کلکس کی تعداد: 292
1
پر توجہ دیں
1166
پیروکار

متحرک چینل پیش رفت کی حکمت عملی پر مبنی

جائزہ

اس حکمت عملی میں Keltner چینل اشارے کا استعمال کیا گیا ہے ، جو متحرک اوسط کے ساتھ مل کر ، متحرک خریدی اور فروخت کی قیمتوں کو طے کرتا ہے ، جس سے کم خریدنے اور فروخت کرنے کے لئے توڑنے کی کارروائی ہوتی ہے۔ حکمت عملی خود بخود چینل کو توڑنے کے لئے خریدنے اور فروخت کرنے کے مواقع کی نشاندہی کرتی ہے۔

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

  1. چینل مڈل ٹریل کا حساب لگائیں: انڈیکس کو منتقل کرنے والی اوسط کا استعمال کرتے ہوئے قیمت مڈل ٹریل کا حساب لگائیں
  2. چینل بینڈوڈتھ کا حساب لگائیں: چینل بینڈوڈتھ کا حساب لگانے کے لئے اصل طول موج یا اوسط اصل طول موج یا قیمتوں میں اضافے کا استعمال کریں
  3. ٹرانزٹ اورٹ اور ڈاون ٹرانزٹ: ٹرانزٹ بینڈوتھ ± N گنا میڈیم ٹرانزٹ
  4. انٹری آرڈر: جب قیمت اوپر کی لکیری لائن کو چھوتی ہے تو ، خریدی قیمت کو توڑنے کے لئے ترتیب دیں ، توڑنے کا انتظار کریں۔ جب قیمت نیچے کی لکیری لائن کو چھوتی ہے تو ، فروخت کی قیمت کو توڑنے کے لئے ترتیب دیں ، توڑنے کا انتظار کریں۔
  5. نکلنے کی ترتیب: جب خریدنے کے بعد وسط ریل پر واپس آجائے یا جب سب سے زیادہ قیمت داخلے کی قیمت سے زیادہ ہو تو رک جائے۔ جب بیچنے کے بعد وسط ریل پر واپس آجائے یا جب کم قیمت داخلے کی قیمت سے کم ہو تو رک جائے۔

طاقت کا تجزیہ

  1. متحرک چینلز کا استعمال کرتے ہوئے ، مارکیٹ کے رجحانات میں تیزی سے تبدیلیوں کو پکڑیں
  2. قیمت کی سمت کا تعین کرنے کے لئے وسط ریل کا استعمال
  3. N گنا بینڈوڈتھ کی ترتیب سے راستے کی حد معقول ہے اور پوزیشنوں کو کثرت سے ایڈجسٹ کرنے سے گریز کیا جاتا ہے
  4. ٹرینڈ تھیوری کے مطابق ، اس میں ایک بریک اپ میکانزم کا استعمال کیا گیا ہے ، جس کا نتیجہ یہ ہے کہ
  5. سٹاپ نقصان کی شرائط مقرر کریں اور خطرے کو سختی سے کنٹرول کریں

خطرے کا تجزیہ

  1. مرکزی دھارے کی لائن کا حساب لگانے کا طریقہ کار چینل کی حد اور قیمت کے ملاپ کے اثر کو متاثر کرتا ہے
  2. N ضرب کو بہت بڑا یا چھوٹا رکھنا حکمت عملی کی واپسی کو متاثر کرتا ہے
  3. جعلی سگنل پیدا کرنے کے لئے خرید و فروخت کو توڑنا آسان ہے ، سختی سے روکنا چاہئے

اصلاح کی سمت

  1. بہترین پیرامیٹرز کو تلاش کرنے کے لئے مختلف مڈل ٹائم لائنوں کو آزمائیں
  2. مختلف N اقدار کی جانچ پڑتال کریں اور بہترین ضرب تلاش کریں
  3. غلط سگنل سے بچنے کے لیے دراندازی کی شدت میں اضافہ کریں
  4. اسٹاپ نقصان کی منطق کو بہتر بنانا ، ایک ہی نقصان پر سخت کنٹرول کرنا

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2024-01-27 00:00:00
end: 2024-02-26 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Keltner Strategy", overlay=true)
length = input.int(20, minval=1)
mult = input.float(2.0, "Multiplier")
src = input(close, title="Source")
exp = input(true, "Use Exponential MA")
BandsStyle = input.string("Average True Range", options = ["Average True Range", "True Range", "Range"], title="Bands Style")
atrlength = input(10, "ATR Length")
esma(source, length)=>
	s = ta.sma(source, length)
	e = ta.ema(source, length)
	exp ? e : s
ma = esma(src, length)
rangema = BandsStyle == "True Range" ? ta.tr(true) : BandsStyle == "Average True Range" ? ta.atr(atrlength) : ta.rma(high - low, length)
upper = ma + rangema * mult
lower = ma - rangema * mult
crossUpper = ta.crossover(src, upper)
crossLower = ta.crossunder(src, lower)
bprice = 0.0
bprice := crossUpper ? high+syminfo.mintick : nz(bprice[1])
sprice = 0.0
sprice := crossLower ? low -syminfo.mintick : nz(sprice[1])
crossBcond = false
crossBcond := crossUpper ? true
     : na(crossBcond[1]) ? false : crossBcond[1]
crossScond = false
crossScond := crossLower ? true
     : na(crossScond[1]) ? false : crossScond[1]
cancelBcond = crossBcond and (src < ma or high >= bprice )
cancelScond = crossScond and (src > ma or low <= sprice )
if (cancelBcond)
	strategy.cancel("KltChLE")
if (crossUpper)
	strategy.entry("KltChLE", strategy.long, stop=bprice, comment="KltChLE")
if (cancelScond)
	strategy.cancel("KltChSE")
if (crossLower)
	strategy.entry("KltChSE", strategy.short, stop=sprice, comment="KltChSE")