এই কৌশলটি কাস্টমাইজড সূচক বিভাজকের উপর ভিত্তি করে প্রবণতা ট্র্যাকিংয়ের জন্য প্রবণতা ট্রেন্ডিংয়ের দিকনির্দেশনা নির্ধারণ করে, মুভিং এভারেজের সাথে দামের দূরত্বের ক্রমিক যোগফলের মাধ্যমে।
এই কৌশলটি একটি কাস্টমাইজড সূচক ব্যবহার করে দামের সাথে চলমান গড়ের দূরত্বকে সংযোজন করে এবং নিম্নরূপ বাস্তবায়িত হয়ঃ
k=close-sma ((close 200) একটি সরল চলমান গড়ের দৈর্ঘ্য 200 এর সাথে দাম গণনা করা হয়েছে
সংজ্ঞায়িত ক্রমবর্ধমান সময়কাল s = ২৯, সর্বশেষ s সময়কালের মধ্যে k এর মানকে ক্রমবর্ধমান সমষ্টিঃ sum = 0, for i = 0 to s, sum := sum + k[i]
যখন sum>0 হয় তখন একটি মাল্টিসিগন্যাল তৈরি হয় এবং যখন sum হয় তখন একটি শূন্য সিগন্যাল তৈরি হয়
একটি মাল্টি-পজিশনে প্রবেশ করার সময়, যদি sum<0 হয় তবে এটি খালি হয়; একটি ডিপোজিট পজিশনে প্রবেশ করার সময়, যদি sum>0 হয় তবে এটি খালি হয়
এই কৌশলটি মূল্যের মোট প্রবণতার দিকটি নির্ধারণের জন্য মুভিং এভারেজের সাথে দামের দূরত্বের ক্রমাগত যোগফলের যোগফলের যোগফলকে অনুসরণ করে। যখন ইন্টিগ্রেটেড এবং পজিটিভ হয়, দামটি একটি উত্থান প্রবণতা হিসাবে বিবেচিত হয়, তখন একটি মাল্টি হেড রাখা উচিত; যখন ইন্টিগ্রেটেড এবং নেতিবাচক হয়, যখন দামটি একটি পতনের প্রবণতা হিসাবে বিবেচিত হয়, তখন একটি শূন্য হেড রাখা উচিত।
কাস্টমাইজড ইনডিকেটর ইন্টিগ্রেটর ব্যবহার করে, মূল্য প্রবণতা দিক নির্ণয় করতে সক্ষম
ইন্টিগ্রেটেড চিন্তাধারা ব্যবহার করে মুভিং এভারেজ থেকে দামের দূরত্বের উপর ভিত্তি করে ট্রেন্ডের সঠিকতা বাড়ানো যায়
তুলনামূলকভাবে সহজ লজিক, সহজেই বোঝা যায়, সহজেই উন্নতি করা যায়
ইন্টিগ্রেটর চক্রের প্যারামিটারগুলিকে নমনীয়ভাবে সামঞ্জস্য করতে পারে, ইন্টিগ্রেটরটির প্রবণতা নির্ধারণের সংবেদনশীলতাকে অনুকূল করে তোলে
রিটার্নিং ভাল, আয় স্থিতিশীল, ব্যবহারযোগ্য
ভুলভাবে ইনটিগ্রাল চক্র সেট করা হলে ইনটিগ্রালটি সংবেদনশীল হতে পারে এবং প্রবণতা পাল্টাতে পারে না
চলমান গড়ের দৈর্ঘ্য ভুলভাবে সেট করা হয়েছে, যার ফলে বিভাজক মূল্য প্রবণতা ভুলভাবে নির্ধারণ করতে পারে
হঠাৎ কোনো বড় ঘটনা দামের তীব্র পরিবর্তন ঘটায়, যার ফলে বিভাজকটি ভুল সংকেত দেয়
ট্রেডিং জাতের ভুল নির্বাচন, যেমন খুব বেশি ওঠানামার জাত নির্বাচন করা, ইন্টিগ্রেটরকে দুর্বল করে তোলে
ঝুঁকি মোকাবেলার উপায়ঃ
ইন্টিগ্রেটারকে প্রবণতা পরিবর্তনের জন্য আরও সংবেদনশীল করার জন্য ইন্টিগ্রেটার চক্রের প্যারামিটারগুলিকে অপ্টিমাইজ করা
বিভিন্ন দৈর্ঘ্যের চলমান গড়ের কার্যকারিতা পরীক্ষা করুন এবং প্রবণতা নির্ধারণের জন্য কার্যকর দৈর্ঘ্য নির্বাচন করুন
বড় ইভেন্টের আগে কৌশল বন্ধ করুন, বড় মূল্য পরিবর্তনের ভুল সংকেত এড়ান
কম অস্থিরতার সাথে ট্রেডিং প্রকারগুলি বেছে নিন, ইনকুবেটরকে আরও কার্যকর করুন
অন্যান্য সহায়ক সূচক যেমন আরএসআই ইত্যাদি অন্তর্ভুক্ত করার জন্য বিবেচনা করা যেতে পারে, যাতে একটি সমন্বিত রায় তৈরি করা যায়
বিভিন্ন ধরণের মুভিং এভারেজ এবং দামের দূরত্বের উপর ইন্টিগ্রাল প্রভাবগুলি গবেষণা করা যেতে পারে
বিভিন্ন ট্রেডিং প্রজাতির সাথে সামঞ্জস্যপূর্ণ করার জন্য ইন্টিগ্রাল চক্রের প্যারামিটারগুলিকে স্বয়ংক্রিয়ভাবে অপ্টিমাইজ করার চেষ্টা করা যেতে পারে
ট্রেডিং ভলিউম সূচক যোগ করা যেতে পারে, যাতে দামের তীব্র ঝাঁকুনির সময় বিভাজকটি ভুল সংকেত দেয় না
মেশিন লার্নিং এবং অন্যান্য পদ্ধতির মাধ্যমে, প্যারামিটারগুলিকে স্বয়ংক্রিয়ভাবে অপ্টিমাইজ করা যায়, যা কৌশলগুলিকে আরও রুক্ষ করে তোলে
এই কৌশলটি কাস্টমাইজড সূচক বিভাজক দ্বারা মূল্যের প্রবণতার দিক নির্ধারণ করে, দাম এবং চলমান গড়ের দূরত্বের সমষ্টিগত সমষ্টির পদ্ধতি ব্যবহার করে প্রবণতার কার্যকর ট্র্যাকিং অর্জন করে। কৌশল লজিক সহজ এবং পরিষ্কার, ভাল পরিমাপ করা হয়। কৌশলটি বিভাজক প্যারামিটারগুলি সামঞ্জস্য করে, সহায়ক সূচক যুক্ত করে বা স্বয়ংক্রিয় অপ্টিমাইজেশনের মতো পদ্ধতিতে উন্নতি করা যেতে পারে, যা কৌশলটিকে বাস্তব জীবনে আরও স্থিতিশীল এবং নির্ভরযোগ্য করে তোলে। সামগ্রিকভাবে, কৌশলটি একটি কার্যকর প্রয়োগের পরিমাণগত প্রবণতা ট্র্যাকিং কৌশল।
/*backtest
start: 2023-10-09 00:00:00
end: 2023-10-16 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Indicator Integrator Strat",default_qty_type = strategy.percent_of_equity, default_qty_value = 100,currency="USD",initial_capital=100, overlay=true)
l = input(defval=170,title="Length for indicator")
s = input(title="Length of summation",defval=29)
a= sma(close,l)
r=roc(close,l)
k=close-a
sum = 0
for i = 0 to s
sum := sum + k[i]
plot(a,color=yellow,linewidth=2,transp=0)
//bc = iff( sum > 0, white, teal)
//plot(sum,color=bc, transp=20, linewidth=3,style=columns)
//plot(sma(sum,3),color=white)
//hline(0)
inpTakeProfit = input(defval = 0, title = "Take Profit", minval = 0)
inpStopLoss = input(defval = 0, title = "Stop Loss", minval = 0)
inpTrailStop = input(defval = 0, title = "Trailing Stop Loss", minval = 0)
inpTrailOffset = input(defval = 0, title = "Trailing Stop Loss Offset", minval = 0)
useTakeProfit = inpTakeProfit >= 1 ? inpTakeProfit : na
useStopLoss = inpStopLoss >= 1 ? inpStopLoss : na
useTrailStop = inpTrailStop >= 1 ? inpTrailStop : na
useTrailOffset = inpTrailOffset >= 1 ? inpTrailOffset : na
longCondition = sum>0
exitlong = sum<0
shortCondition = sum<0
exitshort = sum>0
strategy.entry(id = "Long", long=true, when = longCondition)
strategy.close(id = "Long", when = exitlong)
strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitlong)
strategy.entry(id = "Short", long=false, when = shortCondition)
strategy.close(id = "Short", when = exitshort)
strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitshort)