سی سی آئی کی حکمت عملی کے بعد مومنٹم


تخلیق کی تاریخ: 2023-10-25 17:37:39 آخر میں ترمیم کریں: 2023-10-25 17:37:39
کاپی: 1 کلکس کی تعداد: 762
1
پر توجہ دیں
1617
پیروکار

سی سی آئی کی حکمت عملی کے بعد مومنٹم

جائزہ

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

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

  1. مارکیٹ کے رجحانات کا اندازہ لگانے کے لئے سی سی آئی کا استعمال کریں

    • سی سی آئی ایک مخصوص مدت کے دوران اوسط قیمتوں کے ساتھ موجودہ قیمتوں کا موازنہ کرکے حرکیات کی پیمائش کرتا ہے

    • سی سی آئی 150 سے اوپر کا مطلب ہے زیادہ خریدنا اور -100 سے نیچے کا مطلب ہے زیادہ فروخت کرنا

  2. اختیاری ای ایم اے فلٹر استعمال کریں

    • صرف ای ایم اے سے زیادہ قیمت پر زیادہ خریدیں ، ای ایم اے سے کم قیمت پر خالی کریں

    • ای ایم اے کا استعمال رجحان کی سمت کا تعین کرنے اور رجحان کے خلاف تجارت سے بچنے کے لئے

  3. دو سٹاپ لاسٹ اسٹاپس دستیاب ہیں

    • فکسڈ فی صد پر مبنی سٹاپ نقصان: داخلہ قیمت کا ایک مقررہ فی صد کا استعمال کرتے ہوئے سٹاپ نقصان کی حد مقرر کریں

    • اے ٹی آر پر مبنی اسٹاپ نقصان: اے ٹی آر کے ضرب کو استعمال کرتے ہوئے اسٹاپ نقصان کا تعین کریں ، پھر اسٹاپ کا حساب لگانے کے لئے خطرہ سے واپسی کا تناسب

  4. داخلے کی شرائط

    • سی سی آئی نے 100 لائنوں پر مزید کام کیا

    • سی سی آئی کے تحت 150 لائنوں کے ذریعے خالی جگہیں

    • اگر ای ایم اے کو چالو کیا گیا ہے تو ، صرف اس صورت میں زیادہ کام کریں جب قیمت ای ایم اے سے زیادہ ہو ، اور جب قیمت ای ایم اے سے کم ہو تو خالی ہوجائیں

  5. کھیل کے شرائط

    • اسٹاپ نقصان کی سطح پر پہنچ گئی

    • سی سی آئی نے اوورلوڈ اور اوور سیل زون میں دوبارہ داخل ہونے پر بیعانہ کی قیمتوں میں کمی کی

  6. نقشہ جات

    • نقشہ CCI اشارے، علاقہ رنگین

طاقت کا تجزیہ

  1. سی سی آئی کا استعمال اوور بیئر اور اوور سیل کا تعین کرنے کے لئے کیا جاتا ہے ، جو سی سی آئی کے اشارے کا ایک کلاسیکی استعمال ہے۔

  2. اختیاری ای ایم اے اس بات کو یقینی بناتا ہے کہ صرف رجحان کی سمت میں تجارت کی جائے اور الٹ جانے سے بچا جائے

  3. دو سٹاپ اسٹاپ موڈ فراہم کرتا ہے ، اسٹاپ اسٹاپ کے پیرامیٹرز کو مارکیٹ کے مطابق ایڈجسٹ کیا جاسکتا ہے

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

  5. نقشے میں سی سی آئی سگنل کو نمایاں کیا گیا ہے تاکہ اسے آسانی سے سمجھا جا سکے۔

  6. حکمت عملی کی منطق واضح اور آسان ہے ، آسانی سے سمجھنے اور بہتر بنانے کے لئے

خطرے کا تجزیہ

  1. سی سی آئی کے اشارے میں تاخیر ہے ، جس سے غلط موڑ یا غلط سگنل پیدا ہوسکتے ہیں

  2. غلط EMA پیرامیٹرز کی ترتیب سے رجحانات کو یاد کیا جاسکتا ہے یا حکمت عملی کو غیر فعال کردیا جاسکتا ہے

  3. مارکیٹ میں تبدیلیوں کے ساتھ مطابقت پذیر ہونے کے لئے فی صد سٹاپ نقصان کی روک تھام، وسیع پیمانے پر پیرامیٹرز کو ایڈجسٹ کرنا

  4. ATR سٹاپ نقصان سٹاپ وقفے کی مدت کے لئے حساس ہے اور بہترین پیرامیٹرز کو ایڈجسٹ کیا جانا چاہئے

  5. واپسی کا خطرہ زیادہ ہے ، پوزیشن مینجمنٹ کو مناسب طریقے سے ایڈجسٹ کیا جانا چاہئے

  6. اثر و رسوخ کے اشارے کے پیرامیٹرز کو مارکیٹ کے ماحول میں تبدیلی کے مطابق بروقت اندازہ کیا جانا چاہئے

اصلاح کی سمت

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

  2. مختلف ای ایم اے سائیکلوں کی جانچ کریں تاکہ رجحانات کا بہترین اندازہ لگایا جاسکے

  3. سٹاپ نقصان اور سٹاپ بریک کے پیرامیٹرز کو ایڈجسٹ کریں تاکہ بہترین رسک ٹو ریٹرن حاصل کیا جاسکے

  4. دوسرے فلٹر شرائط شامل کریں ، جیسے ٹرانزیکشن حجم ، جعلی سگنل کو مزید فلٹر کریں

  5. ٹرینڈ لائنز یا گرافکس کے ساتھ مل کر شکل کا فیصلہ کرنے کے لئے ، اثر و رسوخ کو بہتر بنائیں

  6. واپسی کے خطرے کو کنٹرول کرنے کے لئے پوزیشن مینجمنٹ کی حکمت عملی میں اضافہ کریں ، جیسے پوزیشنوں کو فکس کریں

  7. مختلف مارکیٹ کے ماحول کے اعداد و شمار کا مکمل جائزہ ، متحرک ایڈجسٹمنٹ پیرامیٹرز

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-09-24 00:00:00
end: 2023-10-24 00:00:00
period: 1h
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/
// © alifer123

//@version=5
// strategy("CCI+EMA Strategy with Percentage or ATR TP/SL [Alifer]", shorttitle = "CCI_EMA_%/ATR_TP/SL", overlay=false,
//      initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=10, commission_type=strategy.commission.percent, commission_value=0.045)

length = input(14, "CCI Length")
overbought = input.int(150, step = 10, title = "Overbought")
oversold = input.int(-140, step = 10, title = "Oversold")
src = hlc3
ma = ta.sma(src, length)
cci = (src - ma) / (0.015 * ta.dev(src, length))

// EMA
useEMA = input(true, "Use EMA", tooltip = "Only enters long when price is above the EMA, only enters short when price is below the EMA")
emaLength = input(55, "EMA Length")
var float ema = na
if useEMA
    ema := ta.ema(src, emaLength)

// Take Profit and Stop Loss Method
tpSlMethod_percentage = input(true, "Percentage TP/SL", group="TP/SL Method")
tpSlMethod_atr = input(false, "ATR TP/SL", group="TP/SL Method")

// Percentage-based Take Profit and Stop Loss
tp_percentage = input.float(10.0, title="Take Profit (%)", step=0.1, group="TP/SL Method")
sl_percentage = input.float(10.0, title="Stop Loss (%)", step=0.1, group="TP/SL Method")

// ATR-based Take Profit and Stop Loss
atrLength = input(20, title="ATR Length", group="TP/SL Method")
atrMultiplier = input(4, title="ATR SL Multiplier", group="TP/SL Method")
riskRewardRatio = input(2, title="Risk Reward Ratio", group="TP/SL Method")

// Calculate TP/SL levels based on the selected method, or leave them undefined if neither method is selected
longTP = tpSlMethod_percentage ? strategy.position_avg_price * (1 + tp_percentage / 100) : na
longSL = tpSlMethod_percentage ? strategy.position_avg_price * (1 - sl_percentage / 100) : na
shortTP = tpSlMethod_percentage ? strategy.position_avg_price * (1 - tp_percentage / 100) : na
shortSL = tpSlMethod_percentage ? strategy.position_avg_price * (1 + sl_percentage / 100) : na

if tpSlMethod_atr
    longSL := strategy.position_avg_price - ta.atr(atrLength) * atrMultiplier
    longTP := ((strategy.position_avg_price - longSL) * riskRewardRatio) + strategy.position_avg_price
    shortSL := strategy.position_avg_price + ta.atr(atrLength) * atrMultiplier
    shortTP := ((strategy.position_avg_price - shortSL) * riskRewardRatio) - strategy.position_avg_price

// Enter long position when CCI crosses below oversold level and price is above EMA
longCondition = ta.crossover(cci, oversold) and (not useEMA or close > ema)
if longCondition
    strategy.entry("Buy", strategy.long)

// Enter short position when CCI crosses above overbought level and price is below EMA
shortCondition = ta.crossunder(cci, overbought) and (not useEMA or close < ema)
if shortCondition
    strategy.entry("Sell", strategy.short)

// Close long positions with Take Profit or Stop Loss
if strategy.position_size > 0
    strategy.exit("Long Exit", "Buy", limit=longTP, stop=longSL)

// Close short positions with Take Profit or Stop Loss
if strategy.position_size < 0
    strategy.exit("Short Exit", "Sell", limit=shortTP, stop=shortSL)

// Close positions when CCI crosses back above oversold level in long positions or below overbought level in short positions
if ta.crossover(cci, overbought)
    strategy.close("Buy")
if ta.crossunder(cci, oversold)
    strategy.close("Sell")

// Plotting
color_c = cci > overbought ? color.red : (cci < oversold ? color.green : color.white)
plot(cci, "CCI", color=color_c)
hline(0, "Middle Band", color=color.new(#787B86, 50))
obband = hline(overbought, "OB Band", color=color.new(#78867a, 50))
osband = hline(oversold, "OS Band", color=color.new(#867878, 50))
fill(obband, osband, color=color.new(#787B86, 90))