দ্বৈত CCI পরিমাণগত কৌশল


সৃষ্টির তারিখ: 2023-11-28 15:47:04 অবশেষে সংশোধন করুন: 2023-11-28 15:47:04
অনুলিপি: 1 ক্লিকের সংখ্যা: 708
1
ফোকাস
1619
অনুসারী

দ্বৈত CCI পরিমাণগত কৌশল

ওভারভিউ

এই কৌশলটি ক্লাসিক প্রযুক্তিগত সূচক সিসিআই এবং স্বয়ংক্রিয়ভাবে বিকাশিত ভিসিআই, এমসিআই দ্বৈত সূচকগুলির সাথে একত্রিত হয়ে ট্রেডিং সংকেত তৈরি করে। এটি একটি সাধারণ পরিমাণগত ট্রেডিং কৌশল। এটি ভলিউম এবং দামের পরিবর্তনের প্রবণতা সনাক্ত করে এবং বর্তমান বাজারের মূল ট্রেডিং দিক এবং শক্তি বিচার করে ট্রেডিং সংকেত তৈরি করে। এটি ডিজিটাল মুদ্রা, ফরেক্স এবং স্টক ইত্যাদি আর্থিক সরঞ্জামগুলিতে ব্যাপকভাবে প্রয়োগ করা যেতে পারে।

কৌশল নীতি

  1. ohlc4 গড়রেখার হিসাব করে, এবং সিসিআই সূচকের সাথে মিলিয়ে দাম নির্ধারণ করে;
  2. অর্থের প্রবাহের পরিমাপের জন্য obv সূচক গণনা করুন;
  3. ভিসিআই সূচক গণনা করা হয়, অর্থের প্রবাহের বন্টন যা ওবিভি সূচক দ্বারা পার্থক্য পরিমাপ করা হয়;
  4. এমসিআই সূচক গণনা করা হয়, যা মূল্যের পার্থক্য দ্বারা মূল্য বন্টন পরিমাপ করা হয়;
  5. VCI এবং MCI সূচকের মধ্যে তুলনা করে বাজারের ক্রয়-বিক্রয় সম্পর্কে বিচার করা;
  • ভিসিআই > এমসিআই, ক্রেতা ইচ্ছুক
  • VCI < MCI, বিক্রেতার ইচ্ছাশক্তি;
  1. ভিসিআই এবং এমসিআই এর তুলনা থেকে তৈরি করা মাল্টি-কোয়াকিং সিগন্যাল;

সামর্থ্য বিশ্লেষণ

  1. এই কৌশলটি মূল্য, লেনদেনের পরিমাণ এবং তহবিলের প্রবাহের বিভিন্ন মাত্রা বিবেচনা করে এবং বাজার কেনা-বেচা সম্পর্কে সঠিক সংকেত দেয়।
  2. ভিসিআই এবং এমসিআই বাজারের রিয়েল-টাইম পরিবর্তনের সাথে খাপ খাইয়ে নিতে সক্ষম, ডায়নামিক স্ট্যান্ডার্ড ডিভেরিয়েন্টের মাধ্যমে;
  3. কৌশলগত প্যারামিটারগুলি ব্যাপকভাবে পুনর্নির্মাণের মাধ্যমে অপ্টিমাইজ করা হয়েছে এবং শক্তিশালী স্থিতিশীলতা রয়েছে;

ঝুঁকি বিশ্লেষণ

  1. দাম এবং লেনদেনের পরিমাণের সূচকগুলি বিলম্বিতভাবে গণনা করা হয়, যাতে অপ্রত্যাশিত ঘটনাগুলি অগ্রিম ধরা যায় না;
  2. একটি একক কৌশল জটিল এবং পরিবর্তনশীল বাজার পরিস্থিতির সম্পূর্ণ কভার করতে পারে না;
  3. মার্কেটকে এককভাবে মূল্যায়ন করার জন্য অন্যান্য সহায়ক সূচকগুলির সাথে একত্রে ব্যবহার করা প্রয়োজন;

অপ্টিমাইজেশান দিক

  1. ডিপ লার্নিং এবং অন্যান্য ভবিষ্যদ্বাণীমূলক মডেলের সাথে সংযুক্ত করে, সংকেত বিচারের নির্ভুলতা বাড়ানো;
  2. স্টপ লস এবং অন্যান্য ঝুঁকি নিয়ন্ত্রণের মডিউল যুক্ত করা, যা কৌশলগুলির স্থায়িত্ব বাড়িয়ে তুলবে;
  3. নির্দিষ্ট বাজারে প্রয়োগযোগ্যতা পরীক্ষা করার জন্য বিভিন্ন প্যারামিটার সমন্বয় চেষ্টা করা যায়;

সারসংক্ষেপ

এই কৌশলটি দ্বি-সিসিআই সূচকগুলির তুলনা করে ট্রেডিং সংকেত তৈরি করে, দাম এবং লেনদেনের পরিমাণের মতো একাধিক কারণ বিবেচনা করে, বাজার ক্রয়-বিক্রয় শক্তির মূল্যায়ন করে। এটি একটি আদর্শ এবং ব্যবহারিক পরিমাণগত ট্রেডিং কৌশল। তবে কৌশলটির সর্বাধিক কার্যকারিতা অর্জনের জন্য এটি অন্যান্য সহায়ক সরঞ্জামগুলির সাথে ব্যবহার করা দরকার। এটি আরও অপ্টিমাইজ করার জন্য উপযুক্ত পরিস্থিতিতে উন্নতি করা এবং ঝুঁকি হ্রাস করা উচিত।

কৌশল সোর্স কোড
/*backtest
start: 2023-10-28 00:00:00
end: 2023-11-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("MCI and VCI - Modified CCI Formulas")
test = cci(ohlc4, 13)
test1 = cci(ohlc4, 20)

obv(src) => cum(change(src) > 0 ? volume : change(src) < 0 ? -volume : 0*volume)
mDisc = input(0, title="Mode Discrepency")
mDiv = input(0.015, title="Interval")
mean(_src, _length)=>
    _return = sum(_src, _length) / _length

median(_src, _length)=>
    _return = _src
    for _i = 0 to _length
        _return := _return == 0 ? _src : (_return + _src[_i]) / 2
    _return


len = input(20, title="Standard (Average) Length")
mmm = input(20, title="Lookback length")
srcV = obv(input(ohlc4))
srcP = input(close)
x = sma(srcV, len)
MDV2 = abs(stdev(median(x, len), mmm))
MDV3 = abs(stdev(mean(x, len), mmm))
AMDV = (MDV2+MDV3)/2
pt1v = (srcV-ema(srcV, len))/ AMDV
pt2v = 1/mDiv
VCI=pt1v*pt2v
y = ema(srcP, len)
MDP2 =  abs(stdev(median(y, len), mmm))
MDP3 = abs(stdev(mean(y, len), mmm))
AMDA = (MDP2 + MDP3)/2
pt1p = 1/mDiv
pt2p = (srcP-ema(srcP, len))/ AMDA
MCI = pt1p * pt2p
plot(VCI, color=yellow, title="VCI", style="Histogram")
plot(MCI, color=white, title="MCI")

plot(500, style=line)

plot(0, style=line, linewidth=2)

plot(-500, style=line)
long = crossover(MCI, 0) and VCI > MCI[2] 
short = crossunder(MCI, 0) and VCI < MCI[2] 
//Time Control
//Set date and time
FromMonth = input(defval = 9, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 13, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2018, title = "From Year", minval = 2017)
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2017)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => time >= start and time <= finish ? true : false // create function "within window of time"


direction = input(0, title = "Strategy Direction", minval=-1, maxval=1)
strategy.risk.allow_entry_in(direction == 0 ? strategy.direction.all : (direction < 0 ? strategy.direction.short : strategy.direction.long))
if (long)
    strategy.entry("Long", strategy.long, when=window(), limit=ohlc4, oca_name="BollingerBands",  comment="BBandLE")
else
    strategy.cancel(id="Long")

if (short)
    strategy.entry("Short", strategy.short, when=window(), limit=ohlc4, oca_name="BollingerBands", comment="BBandSE")
else
    strategy.cancel(id="Short")