متحرک CCI بریک آؤٹ حکمت عملی


تخلیق کی تاریخ: 2024-02-18 10:13:21 آخر میں ترمیم کریں: 2024-02-18 10:13:21
کاپی: 1 کلکس کی تعداد: 664
1
پر توجہ دیں
1617
پیروکار

متحرک CCI بریک آؤٹ حکمت عملی

جائزہ

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

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

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

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

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

طاقت کا تجزیہ

اس حکمت عملی کے درج ذیل فوائد ہیں:

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

خطرے کا تجزیہ

اس حکمت عملی میں مندرجہ ذیل خطرات بھی ہیں:

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

مندرجہ بالا خطرات کے لئے، بنیادی اصلاحات یہ ہیں:

  1. دوسرے اشارے کے ساتھ مل کر فلٹر سی سی آئی اشارے کے اشارے۔
  2. واپسی کی پیمائش کے مطابق سٹاپ نقصان کی پوزیشن کو بہتر بنائیں۔
  3. رجحانات کی پیمائش کرنے والے اشارے کو بڑھانا اور ہلچل سے بچنا۔
  4. بڑے پیمانے پر حمایت اور دباؤ کی سطح کا فیصلہ کرنے کے لئے، آپریشن کی سمت کا فیصلہ کریں.

اصلاح کی سمت

اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:

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

  2. سٹاپ نقصان کے طریقوں کو بہتر بنائیں: مختلف سٹاپ نقصان کے طریقوں کی جانچ کریں ، بہترین سٹاپ نقصان کا انتخاب کریں۔ آپ کو ٹریکنگ سٹاپ نقصان کے طریقوں میں شامل کیا جاسکتا ہے۔

  3. فلٹرنگ اشارے کی اصلاح: دیگر اشارے جیسے MACD ، RSI شامل کریں ، ایک کثیر اشارے فلٹرنگ سسٹم بنائیں ، جھوٹے سگنل کو کم کریں۔

  4. رجحانات کا تعین کرنے میں بہتری: رجحانات کا تعین کرنے والے اشارے جیسے کہ چلتی اوسط شامل کریں ، مخالف سمت سے بچیں۔

  5. خودکار اسٹاپ کی اصلاح: متحرک اسٹاپ کا طریقہ بنائیں تاکہ حکمت عملی مارکیٹ میں اتار چڑھاو کے مطابق خود بخود اسٹاپ کرسکے۔

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-02-11 00:00:00
end: 2023-09-20 00:00:00
period: 1d
basePeriod: 1h
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/
// © tweakerID

// ---From the "Bitcoin Trading Strategies" book, by David Hanson---

// After testing, works better with an ATR stop instead of the Strategy Stop. This paramater
// can be changed from the strategy Inputs panel.

// "CCI Scalping Strategy
// Recommended Timeframe: 5 minutes
// Indicators: 20 Period CCI, 20 WMA
// Long when: Price closes above 20 WMA and CCI is below -100, enter when CCI crosses above -100.
// Stop: Above 20 WMA"

//@version=4
strategy("CCI Scalping Strat", 
     overlay=true, 
     default_qty_type=strategy.percent_of_equity, 
     default_qty_value=100, 
     initial_capital=10000, 
     commission_value=0.04, 
     calc_on_every_tick=false, 
     slippage=0)

direction = input(0, title = "Strategy Direction", type=input.integer, minval=-1, maxval=1)
strategy.risk.allow_entry_in(direction == 0 ? strategy.direction.all : (direction < 0 ? strategy.direction.short : strategy.direction.long))

/////////////////////// STRATEGY INPUTS ////////////////////////////////////////
title1=input(true, "-----------------Strategy Inputs-------------------")  

i_Stop = input(0, step=.05, title="Strategy Stop Mult")*.01
i_CCI=input(16, title="CCI Length")
i_WMA=input(5, title="WMA Length")

/////////////////////// BACKTESTER /////////////////////////////////////////////
title2=input(true, "-----------------General Inputs-------------------")  

// Backtester General Inputs
i_SL=input(true, title="Use Stop Loss and Take Profit")
i_SLType=input(defval="ATR Stop", title="Type Of Stop", options=["Strategy Stop", "Swing Lo/Hi", "ATR Stop"])
i_SPL=input(defval=10, title="Swing Point Lookback")
i_PercIncrement=input(defval=2, step=.1, title="Swing Point SL Perc Increment")*0.01
i_ATR = input(14, title="ATR Length")
i_ATRMult = input(10, step=.1, title="ATR Multiple")
i_TPRRR = input(1.5, step=.1, title="Take Profit Risk Reward Ratio")

// Bought and Sold Boolean Signal
bought = strategy.position_size > strategy.position_size[1] 
 or strategy.position_size < strategy.position_size[1]

// Price Action Stop and Take Profit
LL=(lowest(i_SPL))*(1-i_PercIncrement)
HH=(highest(i_SPL))*(1+i_PercIncrement)
LL_price = valuewhen(bought, LL, 0)
HH_price = valuewhen(bought, HH, 0)
entry_LL_price = strategy.position_size > 0 ? LL_price : na 
entry_HH_price = strategy.position_size < 0 ? HH_price : na 
tp=strategy.position_avg_price + (strategy.position_avg_price - entry_LL_price)*i_TPRRR
stp=strategy.position_avg_price - (entry_HH_price - strategy.position_avg_price)*i_TPRRR

// ATR Stop
ATR=atr(i_ATR)*i_ATRMult
ATRLong = ohlc4 - ATR
ATRShort = ohlc4 + ATR
ATRLongStop = valuewhen(bought, ATRLong, 0)
ATRShortStop = valuewhen(bought, ATRShort, 0)
LongSL_ATR_price = strategy.position_size > 0 ? ATRLongStop : na 
ShortSL_ATR_price = strategy.position_size < 0 ? ATRShortStop : na 
ATRtp=strategy.position_avg_price + (strategy.position_avg_price - LongSL_ATR_price)*i_TPRRR
ATRstp=strategy.position_avg_price - (ShortSL_ATR_price - strategy.position_avg_price)*i_TPRRR

/////////////////////// STRATEGY LOGIC /////////////////////////////////////////

//CCI
CCI=cci(close, i_CCI)
//WMA
WMA=wma(close, i_WMA)

//Stops
LongStop=valuewhen(bought, WMA, 0)*(1-i_Stop)
ShortStop=valuewhen(bought, WMA, 0)*(1+i_Stop)
StratTP=strategy.position_avg_price + (strategy.position_avg_price - LongStop)*i_TPRRR
StratSTP=strategy.position_avg_price - (ShortStop - strategy.position_avg_price)*i_TPRRR

BUY = (close > WMA) and crossover(CCI , -100)
SELL = (close < WMA) and crossunder(CCI , 100)

//Trading Inputs
DPR=input(true, "Allow Direct Position Reverse")
reverse=input(false, "Reverse Trades")

// Entries
if reverse
    if not DPR
        strategy.entry("long", strategy.long, when=SELL and strategy.position_size == 0)
        strategy.entry("short", strategy.short, when=BUY and strategy.position_size == 0)
    else     
        strategy.entry("long", strategy.long, when=SELL)
        strategy.entry("short", strategy.short, when=BUY)
else
    if not DPR 
        strategy.entry("long", strategy.long, when=BUY and strategy.position_size == 0)
        strategy.entry("short", strategy.short, when=SELL and strategy.position_size == 0)
    else
        strategy.entry("long", strategy.long, when=BUY)
        strategy.entry("short", strategy.short, when=SELL)


SL= i_SLType == "Swing Lo/Hi" ? entry_LL_price : i_SLType == "ATR Stop" ? LongSL_ATR_price : LongStop
SSL= i_SLType == "Swing Lo/Hi" ? entry_HH_price : i_SLType == "ATR Stop" ? ShortSL_ATR_price : ShortStop
TP= i_SLType == "Swing Lo/Hi" ? tp : i_SLType == "ATR Stop" ? ATRtp : StratTP
STP= i_SLType == "Swing Lo/Hi" ? stp : i_SLType == "ATR Stop" ? ATRstp : StratSTP

strategy.exit("TP & SL", "long", limit=TP, stop=SL, when=i_SL)
strategy.exit("TP & SL", "short", limit=STP, stop=SSL, when=i_SL)

/////////////////////// PLOTS //////////////////////////////////////////////////


plot(WMA)
plot(i_SL and strategy.position_size > 0 ? SL : na , title='SL', style=plot.style_cross, color=color.red)
plot(i_SL and strategy.position_size < 0 ? SSL : na , title='SSL', style=plot.style_cross, color=color.red)
plot(i_SL and strategy.position_size > 0 ? TP : na, title='TP', style=plot.style_cross, color=color.green)
plot(i_SL and strategy.position_size < 0 ? STP : na, title='STP', style=plot.style_cross, color=color.green)
// Draw price action setup arrows
plotshape(BUY ? 1 : na, style=shape.triangleup, location=location.belowbar, 
 color=color.green, title="Bullish Setup", size=size.auto)
plotshape(SELL ? 1 : na, style=shape.triangledown, location=location.abovebar, 
 color=color.red, title="Bearish Setup", size=size.auto)