
এই কৌশলটি ক্লাসিক কমোডিটি চ্যানেল ইনডেক্স (CCI) উপর ভিত্তি করে, শুধুমাত্র মাল্টি-হেড করা হয়। যখন CCI সূচকটি খুব কম হয় (CCI <-150 বা ব্যবহারকারীর সংজ্ঞায়িত থ্রেশহোল্ড) এবং পুনরায় শক্তি অর্জন করে (CCI> পূর্ববর্তী রুট K লাইনের CCI) এবং একই সাথে দামের দৃness়তা থ্রেশহোল্ড নিজেই ফিল্টার করা হয় (যেমন, K লাইনের বন্ধের দামের সংকেতটি অবশ্যই খোলার দামের একটি নির্দিষ্ট পরিমাণের চেয়ে বেশি হতে হবে - 0.25% স্থির করা হয়েছে), সিস্টেমটি বাজারে প্রবেশ করবে। যখন স্টপ লস বা CCI এর চেয়ে বেশি দাম পৌঁছে যায়, তখন পজিশনটি সরিয়ে ফেলা হবে।
এই কৌশলটি ট্রেডিংয়ের জন্য ব্যবহার করা হয় যাতে উচ্চ সাফল্যের হার (৫০% এর বেশি) পাওয়া যায়, ট্রেডিংয়ের পুরো দৈর্ঘ্য ধরে রাখার পরিবর্তে। সুতরাং, এটি এমন ট্রেডারদের জন্য প্রযোজ্য যারা সম্ভাব্য ক্ষতির জন্য উদাসীন।
CCI সূচক এবং তার মধ্যবর্তী রেখাচিত্র তৈরি করতে ta.sma () এবং ta.dev () ফাংশন ব্যবহার করুন।
ইনপুট ব্যবহার করে ট্রেডিং শুরু করার তারিখ নির্বাচন করুন এবং একটি রিটার্নিং উইন্ডো সেট করুন।
প্রবেশের শর্তঃ সিসিআই-এর নিচে নিম্ন লাইনটি অতিক্রম করে এবং উপরে উঠতে শুরু করে, একই সাথে সিগন্যাল কে লাইনের সমাপ্তি মূল্যটি খোলার মূল্যের চেয়ে ০.২৫% বেশি হওয়া দরকার।
১ঃ সিসিআই-র পর লাইন ওভার, স্টপ-অফ।
প্রস্থান শর্ত ২ঃ স্টপ লস লাইন অতিক্রম করে, ক্ষতিগ্রস্থরা মাঠ ছেড়ে চলে যায়।
সিসিআই সূচকের শক্তির উপর ভিত্তি করে প্রবেশের সময় বেছে নেওয়ার কৌশলটি কেবলমাত্র অতিরিক্ত কাজ করে, যখন স্টপ লস কন্ট্রোল ঝুঁকি ব্যবহার করা হয়।
এই কৌশলটির সুবিধাগুলো হলঃ
সিসিআই সূচকগুলি ওভারবয় ও ওভারসেলের ঘটনাগুলি চিহ্নিত করে, যার ফলে বিপরীতমুখী সুযোগগুলি কার্যকরভাবে ধরা যায়।
“এটি একটি দুর্দান্ত কাজ, তবে আমি মনে করি এটি একটি দুর্দান্ত কাজ।
দামের শক্তি ব্যবহার করে, নিশ্চিত করুন যে প্রবেশের সময় দামগুলি সমর্থন করে।
ক্ষতিপূরণ ব্যবস্থা একক ক্ষতি নিয়ন্ত্রণ করে এবং তহবিলকে কার্যকরভাবে পরিচালনা করে।
ফিডব্যাক প্যারামিটারগুলি নমনীয়, ইনপুট ফিল্টারিং শর্তগুলি সামঞ্জস্য করা যায়।
উচ্চতর বিজয়ী হার, যা তহবিল পরিচালনার উপর দৃষ্টি নিবদ্ধ করে এমন বিনিয়োগকারীদের জন্য উপযুক্ত।
কোডটি সংক্ষিপ্ত এবং সহজে বোঝা যায়।
এই কৌশলটি কিছু ঝুঁকি নিয়েও এসেছেঃ
কিন্তু, আপনি যদি কেবলমাত্র একাধিক দিকনির্দেশনা অনুসরণ করেন, তাহলে আপনি খুব সহজেই একটি সংক্ষিপ্ত লাইন মিস করতে পারেন।
CCI প্যারামিটার ভুল সেট করা হলে এটি ব্যর্থ হতে পারে।
স্টপ লস সেটিংটি খুব হালকা এবং ক্ষতির উপর কার্যকর নিয়ন্ত্রণের অযোগ্য।
“অনেকের কাছে, স্টপ লস অনেক বেশি ক্ষতির কারণ হয়েছে।
সংশ্লিষ্ট ঝুঁকি ব্যবস্থাপনা ব্যবস্থাঃ
CCI প্যারামিটার অপ্টিমাইজ করুন, সর্বোত্তম মান খুঁজুন
স্টপ লস এর মাত্রা সামঞ্জস্য করে, ঝুঁকি এবং স্টপ লস অতিক্রম হওয়ার সম্ভাবনা মধ্যে একটি ভারসাম্য খুঁজে বের করা।
লেনদেনের খরচ বিবেচনা করে, কন্ট্রোল এন্ট্রি ফ্রিকোয়েন্সি
ট্রেন্ডিং এবং স্পেসিফিকেশনের সাথে একতরফা লেনদেন এড়ানোর জন্য।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ
ডায়নামিক স্টপ ব্যবহার করে, বাজারের অস্থিরতার উপর নির্ভর করে স্টপ দূরত্বের সমন্বয় করে।
ম্যাকডের মতো সূচকগুলির সাথে মিলিত হয়ে, খুব হালকা স্টপ লস এড়ানো যায়।
সিসিআই সূচক গরম হয়ে গেলে খালি করার কথা ভাবুন।
ট্রেডিং খরচ বিবেচনা করুন এবং সর্বনিম্ন স্টপ দূরত্ব সেট করুন।
অপ্টিমাইজেশান প্যারামিটারগুলিকে কৌশলগত সময়সীমার সাথে একত্রিত করে সর্বোত্তম সমন্বয় খুঁজে বের করুন।
মেশিন লার্নিং পদ্ধতি ব্যবহার করে প্যারামিটারগুলি স্বয়ংক্রিয়ভাবে অপ্টিমাইজ করুন।
তহবিল ব্যবস্থাপনা মডিউল যোগ করা, গতিশীলভাবে অবস্থান পরিবর্তন করা।
সংক্ষেপে, এই কৌশলটি সিসিআই সূচকের অতিরিক্ত ক্রয় ও ওভারসেল বৈশিষ্ট্যটি ব্যবহার করে, যখন দামগুলি সমর্থন করে তখন অতিরিক্ত কাজ করে, ক্ষতি নিয়ন্ত্রণের ঝুঁকি নিয়ন্ত্রণ করে, উচ্চ লাভের ব্যবসায়ের জন্য। কৌশলটির সুবিধাটি সহজেই পরিচালনা করা যায়, ঝুঁকি নিয়ন্ত্রণ করা যায়। বিদ্যমান ত্রুটিগুলি হ’ল কেবলমাত্র অতিরিক্ত কাজ করা, স্থির হওয়ার চেয়ে বেশি ক্ষতি হওয়া ইত্যাদি। এই সমস্যাগুলি প্যারামিটার অপ্টিমাইজেশন, বিক্রয় পয়েন্ট বৃদ্ধি, গতিশীল স্টপ লস ইত্যাদির মাধ্যমে উন্নত করা যেতে পারে। এই কৌশলটি উচ্চ লাভের সন্ধানকারী এবং তহবিল পরিচালনার উপর দৃষ্টি নিবদ্ধ করা বিনিয়োগকারীদের জন্য উপযুক্ত।
/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(title='CCI High Performance long only', overlay=false )
src = input(close)
length = input.int(20, title='Period', minval=1)
lossp = input.float(8, title='Stop Loss percentage', minval=0.5, step=0.5)
scart = input.float(0.25, title='Close of the signal bar higher than Open %', minval = 0)
upperline = input.int(150, title='Upper Band', minval=0, step=10)
lowline = input.int(-150, title='Low Band', maxval=0, step=10)
// construction of CCI (not on close but in totalprice) and of bands
ma = ta.sma(src, length)
cci = (src - ma) / (0.015 * ta.dev(src, length))
plot(cci, 'CCI', color=color.new(#996A15, 0))
band1 = hline(upperline, 'Upper Band', color=#C0C0C0, linestyle=hline.style_dashed)
band0 = hline(lowline, 'Lower Band', color=#C0C0C0, linestyle=hline.style_dashed)
fill(band1, band0, color=color.new(#9C6E1B, 90), title='Background')
// === INPUT BACKTEST RANGE ===
fromMonth = input.int(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromDay = input.int(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromYear = input.int(defval = 2016, title = "From Year", minval = 1970)
thruMonth = input.int(defval = 1, title = "Thru Month", minval = 1, maxval = 12)
thruDay = input.int(defval = 1, title = "Thru Day", minval = 1, maxval = 31)
thruYear = input.int(defval = 2112, title = "Thru Year", minval = 1970)
// === FUNCTION EXAMPLE limit for backtest ===
start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window
finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window
window() => time >= start and time <= finish ? true : false // create function "within window of time"
//ENTRY CONDITIONS
// strategy: enter when CCI is under the low line and starts increasing. The filter is that the signal candle should mark a close higher than a x-percent
// (0.25%) of the open
// Exit when either when it reaches the target of a prices highest than high level of CCI or fixed stop loss (in percentage)
scart_level = open * (1+scart/100)
entryl = cci[1] < lowline[1] and cci > cci[1] and close > scart_level and window()
exit1 = cci> upperline
strategy.entry('Long', strategy.long, when=entryl)
strategy.close('Long', when=exit1, comment='target')
// money management (only stop loss)
losspel = strategy.position_avg_price * (1 - lossp / 100)
fixed_stop_long = close < losspel
strategy.close('Long', when=fixed_stop_long, comment='Stop Loss')