
এই কৌশলটি সুপারট্রেন্ডিং সূচক এবং কমোডিটি চ্যানেল ইনডেক্স (CCI) সূচককে একত্রিত করে, একটি একাধিক সময় ফ্রেমের ট্রেন্ড ট্র্যাকিং এবং ট্রেডিং সিগন্যাল জেনারেশন অর্জন করে। এই কৌশলটির মূল ধারণাটি হ’ল সিসিআই সূচককে স্বল্পমেয়াদী প্রবণতার দিকনির্দেশের জন্য ব্যবহার করা হয়, যখন সুপারট্রেন্ডিং সূচককে সংযুক্ত করা হয় মাঝারি এবং দীর্ঘমেয়াদী প্রবণতার দিকনির্দেশের জন্য। যখন স্বল্পমেয়াদী এবং মাঝারি-মেয়াদী প্রবণতা একত্রিত হয়, তখন ট্রেডিং সিগন্যাল তৈরি হয়।
সিসিআই সূচকটি ওভারসোল্ডের বিষয়ে সিদ্ধান্ত নিতে পারে, যখন সিসিআই সূচকটি নীচে থেকে শূন্য অক্ষটি অতিক্রম করে তখন এটি একটি মাল্টিহেড সংকেত, বিপরীতে এটি একটি খালি মাথা সংকেত। এই কৌশলটি স্বল্পমেয়াদী প্রবণতার দিকনির্দেশের জন্য এই বৈশিষ্ট্যটি ব্যবহার করে।
cci_period = input(28, "CCI Period")
cci = cci(source, cci_period)
ML = input(0, "CCI Mid Line pivot")
উপরের কোডটি সিসিআই সূচকের সময়কাল এবং কেন্দ্রীয় অক্ষের অবস্থান নির্ধারণ করে।
TrendUp := cci[1] > ML ? max(Up,TrendUp[1]) : Up
TrendDown := cci[1]< ML ? min(Dn,TrendDown[1]) : Dn
কোডের এই অংশটি নির্ধারণ করে যে সিসি 0 অক্ষের উপর দিয়ে যায় কিনা, যদি তা হয় তবে এটি সুপার ট্রেন্ডের উপরের ট্রেলটি আপডেট করে এবং নীচের ট্রেলটি আপডেট করে।
সুপারট্রেন্ডিং সূচকটি এটিআর সূচককে দামের সাথে একত্রিত করে মাঝারি এবং দীর্ঘমেয়াদী প্রবণতার দিক নির্ধারণ করতে পারে। যখন দাম সুপারট্রেন্ডিংয়ের উত্তোলন করে তখন এটি একটি মাল্টিহেড সংকেত এবং নীচের ট্র্যাকটি একটি খালি মাথা সংকেত।
এই কৌশলটিতে সুপারট্রেন্ড সূচকগুলির জন্য গণনা সূত্রটি নিম্নরূপঃ
Up=hl2-(Factor*atr(Pd))
Dn=hl2+(Factor*atr(Pd))
যেখানে Factor এবং Pd হল সমন্বয়যোগ্য প্যারামিটার
ট্রেন্ড ভেরিয়েবল সুপারট্রেন্ডের বর্তমান দিকনির্দেশনা নির্ধারণ করেঃ
Trend := cci > ML ? 1: cci < ML ? -1: nz(Trend[1],1)
CCI এবং সুপার ট্রেন্ড ইন্ডিকেটর একত্রিত করে, এই কৌশলটি একাধিক সময় ফ্রেমের মধ্যে প্রবণতা বিচার করে। CCI সূচকটি স্বল্পমেয়াদী প্রবণতা ক্যাপচার করে, সুপার ট্রেন্ড ইন্ডিকেটর মধ্যমেয়াদী এবং দীর্ঘমেয়াদী প্রবণতা বিচার করে।
যখন দুটি দিক একই হয়, তখন আরও নির্ভরযোগ্য ট্রেডিং সিগন্যাল তৈরি হয়।
isLong = st_trend == 1
isShort = st_trend == -1
প্রবেশের সময়টি স্বল্পমেয়াদী এবং মধ্যমেয়াদী সমান্তরাল, এবং প্রস্থানের সময়টি স্বল্পমেয়াদী এবং মধ্যমেয়াদী বিপরীতমুখী।
ট্রেডিং সিগন্যালকে আরো নির্ভরযোগ্য করে তোলার জন্য এই কৌশলটি স্বল্পমেয়াদী এবং মধ্য-মেয়াদী প্রবণতা নির্ণয়ের সূচকগুলিকে একত্রিত করে।
ফ্যাক্টর প্যারামিটারগুলি সুপার ট্রেন্ডিং সূচক এবং CCI সূচকের cc_period বাজারের সাথে সামঞ্জস্যপূর্ণ, যা কৌশলটিকে আরও নমনীয় করে তোলে।
কৌশলটি সহজ, পরিষ্কার, সহজে বোঝা যায় এবং বাস্তবায়িত হয়, যা কোয়ান্টাম ট্রেডিংয়ের নতুনদের জন্য উপযুক্ত।
শেয়ার, ফরেক্স, ক্রিপ্টোকারেন্সি ইত্যাদির জন্য প্রযোজ্য, প্যারামিটার সেটিং অনুসারে বিভিন্ন জাতের জন্যও প্রযোজ্য।
যখন দামের প্রবল ওঠানামা হয়, তখন অনেক ভুয়া সংকেত দেখা দেয়। সুপারট্রেন্ডের ফ্যাক্টর প্যারামিটারগুলি যথাযথভাবে বাড়ানো যেতে পারে এবং কৌশলটির ট্রেডিং ফ্রিকোয়েন্সি হ্রাস করা যেতে পারে।
সুপারট্রেন্ডগুলি শক্তিশালী হওয়ার জন্য যথেষ্ট নয়, তবে গতিশীলতার সূচকগুলির সাথে মিলিত হয়ে ট্রেন্ডটি ত্বরান্বিত হওয়ার সময় অনুসরণ করা যেতে পারে।
এই কৌশলটি কোন স্টপ লস সেট করেনি, এটি এটিআর সূচকটির আকারের সাথে trails স্টপ লস সেট করে।
বিভিন্ন বাজারের বৈশিষ্ট্য অনুসারে সুপার ট্রেন্ড এবং সিসিআই এর প্যারামিটারগুলিকে সামঞ্জস্য করে কৌশলগত স্থিতিশীলতা বাড়ানো।
MACD, KDJ ইত্যাদির মতো গতিশীল সূচকগুলির সাথে মিলিত হয়ে ট্রেন্ডের গতি বাড়ানোর সময় ট্রেন্ড অনুসরণ করা আরও বেশি লাভের জন্য।
মেশিন লার্নিং এবং ইন্টিগ্রেটেড লার্নিং পদ্ধতি ব্যবহার করে কৌশলগত প্যারামিটার এবং লেনদেনের নিয়মগুলিকে অপ্টিমাইজ করুন।
এই কৌশলটি সুপারট্রেন্ড এবং সিসিআই সূচকগুলির সাথে সফলভাবে একত্রিত হয়েছে, একাধিক সময় ফ্রেমের মধ্যে প্রবণতা বিচার করা সম্ভব হয়েছে। কৌশলটি সহজ এবং সহজেই বোঝা যায়, প্যারামিটারগুলি সামঞ্জস্যযোগ্য, লাভের সম্ভাবনা রয়েছে। এটি একটি নির্ভরযোগ্য, স্থিতিশীল এবং দক্ষ ট্রেডিং কৌশল হিসাবে পরিণত করার জন্য আরও অপ্টিমাইজ করা যেতে পারে, যেমন প্যারামিটারিং, স্টপ লস এবং ইন্টিগ্রেটেড লার্নিং ইত্যাদি।
/*backtest
start: 2024-01-10 00:00:00
end: 2024-01-17 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//@author=Daveatt
StrategyName = "Best Supertrend CCI Strategy"
ShortStrategyName = "Best Supertrend CCI Strategy"
strategy(title=StrategyName, shorttitle=ShortStrategyName, overlay=true )
//////////////////////////
//* COLOR CONSTANTS *//
//////////////////////////
AQUA = #00FFFFFF
BLUE = #0000FFFF
RED = #FF0000FF
LIME = #00FF00FF
GRAY = #808080FF
DARKRED = #8B0000FF
DARKGREEN = #006400FF
GOLD = #FFD700
WHITE = color.white
// Plots
GREEN_LIGHT = color.new(color.green, 40)
RED_LIGHT = color.new(color.red, 40)
BLUE_LIGHT = color.new(color.aqua, 40)
PURPLE_LIGHT = color.new(color.purple, 40)
source = input(close)
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
/////////////////////////////////// CCI /////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
cci_period = input(28, "CCI Period")
cci = cci(source, cci_period)
//UL = input(80, "Upper level")
//LL = input(20, "Lower Level")
ML = input(0, "CCI Mid Line pivot")
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////// SUPERTREND /////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
Factor=input(3,title="[ST] Factor", minval=1,maxval = 100, type=input.float)
Pd=input(3, title="[ST] PD", minval=1,maxval = 100)
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
/////////////////////// SUPERTREND DETECTION //////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
f_supertrend(Factor, Pd) =>
Up=hl2-(Factor*atr(Pd))
Dn=hl2+(Factor*atr(Pd))
TrendUp = 0.0
TrendUp := cci[1] > ML ? max(Up,TrendUp[1]) : Up
TrendDown = 0.0
TrendDown := cci[1]< ML ? min(Dn,TrendDown[1]) : Dn
Trend = 0.0
Trend := cci > ML ? 1: cci < ML ? -1: nz(Trend[1],1)
Tsl = Trend==1? TrendUp: TrendDown
[Trend, Tsl]
[st_trend, st_tsl] = f_supertrend(Factor, Pd)
// Plot the ST
linecolor = close >= st_tsl ? color.green : color.red
plot(st_tsl, color = linecolor , linewidth = 3,title = "SuperTrend", transp=0)
isLong = st_trend == 1
isShort = st_trend == -1
longClose = isLong[1] and isShort
shortClose = isShort[1] and isLong
strategy.entry("Long", 1, when=isLong)
strategy.close("Long", when=longClose )
strategy.entry("Short", 0, when=isShort)
strategy.close("Short", when=shortClose )