Chaikin Money Flow (CMF) اشارے کی حکمت عملی پر مبنی


تخلیق کی تاریخ: 2024-06-07 17:05:04 آخر میں ترمیم کریں: 2024-06-07 17:05:04
کاپی: 2 کلکس کی تعداد: 702
1
پر توجہ دیں
1664
پیروکار

Chaikin Money Flow (CMF) اشارے کی حکمت عملی پر مبنی CASHISKING | CASHISKING CMF, EMA, SMA

جائزہ

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

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

  1. ایک مخصوص مدت کے دوران Chaikin فنڈ فلو (CMF) کی قدر کا حساب لگائیں۔ سی ایم ایف اشارے قیمتوں اور حجم کے اعداد و شمار کو جوڑتا ہے تاکہ فنڈز کی آمد اور اخراج کی شدت کی پیمائش کی جاسکے۔
  2. سی ایم ایف کے اعداد و شمار کو ہموار کرنے کے لئے دو مختلف ادوار کی اشاریہ حرکت پذیری اوسط ((EMA) کا استعمال کیا جاتا ہے۔ تیز رفتار ای ایم اے کو قلیل مدتی رجحانات پر قبضہ کرنے کے لئے استعمال کیا جاتا ہے ، اور سست ای ایم اے کو طویل مدتی رجحانات کا تعین کرنے کے لئے استعمال کیا جاتا ہے۔
  3. جب فاسٹ ای ایم اے سست ای ایم اے کے اوپر سے گزرے تو خریدنے کا اشارہ پیدا ہوتا ہے۔ جب فاسٹ ای ایم اے سست ای ایم اے کے نیچے سے گزرے تو بیچنے کا اشارہ پیدا ہوتا ہے۔
  4. ٹریڈنگ سگنل پیدا کرنے کے بعد ، حکمت عملی جعلی سگنل سے بچنے کے لئے دو K لائنوں کی تصدیق کا انتظار کرتی ہے۔
  5. اسٹاپ اور اسٹاپ کی شرائط مرتب کریں ، اسٹاپ قیمت پوزیشن کھولنے کی قیمت کا ایک فیصد ہے ، اور اسٹاپ قیمت پوزیشن کھولنے کی قیمت کا ایک فیصد ہے۔

طاقت کا تجزیہ

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

خطرے کا تجزیہ

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

اصلاح کی سمت

  1. متحرک ایڈجسٹمنٹ پیرامیٹرز: CMF اور EMA کے دورانیہ پیرامیٹرز کو مارکیٹ کے مختلف حالات کے مطابق متحرک طور پر ایڈجسٹ کریں۔
  2. دوسرے اشارے متعارف کروائیں: رجحانات کی شناخت کی درستگی اور سگنل کی وشوسنییتا کو بہتر بنانے کے لئے دوسرے تکنیکی اشارے جیسے رشتہ دار طاقت اشارے ((RSI) ، اوسط حقیقی طول موج ((ATR) وغیرہ کے ساتھ مل کر۔
  3. اسٹاپ اور اسٹاپ کو بہتر بنائیں: مارکیٹ میں اتار چڑھاؤ اور خطرے کی ترجیحات کے مطابق اسٹاپ اور اسٹاپ کے فیصد کو متحرک طور پر ایڈجسٹ کریں تاکہ خطرے کو بہتر طور پر کنٹرول کیا جاسکے اور منافع کو لاک کیا جاسکے۔
  4. پوزیشن مینجمنٹ میں شامل ہوں: مارکیٹ کے رجحانات اور سگنل کی طاقت کے مطابق ، پوزیشن کا سائز متحرک طور پر ایڈجسٹ کریں ، جب رجحان واضح ہو تو پوزیشن میں اضافہ کریں ، اور غیر یقینی صورتحال میں پوزیشن کو کم کریں۔

خلاصہ کریں۔

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

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

//@version=5
strategy("CASHISKING", overlay=false)

// Kullanıcı girişleri ile parametreler
cmfPeriod = input.int(200, "CMF Periyodu", minval=1)
emaFastPeriod = input.int(80, "Hızlı EMA Periyodu", minval=1)
emaSlowPeriod = input.int(160, "Yavaş EMA Periyodu", minval=1)
stopLossPercent = input.float(3, "Stop Loss Yüzdesi", minval=0.1) / 100
stopGainPercent = input.float(5, "Stop Gain Yüzdesi", minval=0.1) / 100

// CMF hesaplama fonksiyonu
cmfFunc(close, high, low, volume, length) =>
    clv = ((close - low) - (high - close)) / (high - low)
    valid = not na(clv) and not na(volume) and (high != low)
    clv_volume = valid ? clv * volume : na
    sum_clv_volume = ta.sma(clv_volume, length)
    sum_volume = ta.sma(volume, length)
    cmf = sum_volume != 0 ? sum_clv_volume / sum_volume : na
    cmf

// CMF değerlerini hesaplama
cmf = cmfFunc(close, high, low, volume, cmfPeriod)

// EMA hesaplamaları
emaFast = ta.ema(cmf, emaFastPeriod)
emaSlow = ta.ema(cmf, emaSlowPeriod)

// Göstergeleri çiz
plot(emaFast, color=color.blue, title="EMA 23")
plot(emaSlow, color=color.orange, title="EMA 50")

// Alım ve Satım Sinyalleri
crossOverHappened = ta.crossover(emaFast, emaSlow)
crossUnderHappened = ta.crossunder(emaFast, emaSlow)

// Kesişme sonrası bekleme sayacı
var int crossOverCount = na
var int crossUnderCount = na

if (crossOverHappened)
    crossOverCount := 0

if (crossUnderHappened)
    crossUnderCount := 0

if (not na(crossOverCount))
    crossOverCount += 1

if (not na(crossUnderCount))
    crossUnderCount += 1

// Alım ve Satım işlemleri
if (crossOverCount == 2)
    strategy.entry("Buy", strategy.long)
    crossOverCount := na  // Sayaç sıfırlanır

if (crossUnderCount == 2)
    strategy.entry("Sell", strategy.short)
    crossUnderCount := na  // Sayaç sıfırlanır

// Stop Loss ve Stop Gain hesaplama
longStopPrice = strategy.position_avg_price * (1 - stopLossPercent)
shortStopPrice = strategy.position_avg_price * (1 + stopLossPercent)
longTakeProfitPrice = strategy.position_avg_price * (1 + stopGainPercent)
shortTakeProfitPrice = strategy.position_avg_price * (1 - stopGainPercent)

// Stop Loss ve Stop Gain'i uygula
if (strategy.position_size > 0 and strategy.position_avg_price > 0)
    strategy.exit("Stop", "Buy", stop=longStopPrice, limit=longTakeProfitPrice)
else if (strategy.position_size < 0 and strategy.position_avg_price > 0)
    strategy.exit("Stop", "Sell", stop=shortStopPrice, limit=shortTakeProfitPrice)