লাগুরের আরএসআই ট্রেডিং কৌশলটি জন এএইচএলআরএস
এই কৌশলটির মূল সূচক হল লেগুরের আরএসআই। এর গণনার সূত্র নিম্নরূপঃ
L0 = (1-γ)Src + γL0[1] L1 = -γL0 + L0[1] + γএল১[১] L2 = -γL1 + L1[1] + γএল২[১] L3 = -γL2 + L2[1] + γএল৩[১]
এখানে γ=1-α, α একটি নিয়মিত সহগ, Src মূল্য প্রতিনিধিত্ব করে। L0 থেকে L3 পর্যন্ত 4 টি সূচক রয়েছে যা পুনরাবৃত্তি সম্পর্ক রয়েছে। এই ভিত্তিতে বর্তমান আপ ইন্টিগ্রাল cu এবং ডাউন ইন্টিগ্রাল cd গণনা করা যেতে পারেঃ
cu = (L0>L1? L0-L1 : 0) + (L1>L2? L1-L2 : 0) + (L2>L3? L2-L3 : 0) cd = (L0
তারপর Laguerre RSI cu এবং cd ব্যবহার করে গণনা করা যেতে পারেঃ
LaRSI = cu / (cu + cd)
পুনরাবৃত্তিমূলক ফিল্টার কাঠামোর মাধ্যমে, লাগুর আরএসআই অনেকগুলি এলোমেলো শব্দ ফিল্টার করে, আরও পরিষ্কার এবং মসৃণ ট্রেডিং সংকেত তৈরি করে।
বাণিজ্যের বিশেষ নিয়ম হল: যখন লাগুরের আরএসআই ২০ এর উপরে চলে যায়, তখন লং হয়ে যায় এবং যখন লাগুরের আরএসআই ৮০ এর নিচে চলে যায় তখন শর্ট হয়ে যায়।
লাগুরের আরএসআই কৌশলটির প্রধান সুবিধা হলঃ
কার্যকরভাবে Laguerre ফিল্টার কাঠামো মাধ্যমে RSI এর গোলমাল ফিল্টার, ট্রেডিং সংকেত পরিষ্কার এবং আরো নির্ভরযোগ্য করে তোলে
সামঞ্জস্যযোগ্য α সহগ কৌশল প্যারামিটার আরো বাজার পরিবেশে মানিয়ে নিতে অপ্টিমাইজেশান জন্য নমনীয় করে তোলে
ফিল্টারিং, ট্রেন্ড ইন্টিগ্রেশন এবং ওভারকুপড/ওভারসোল্ডের মাধ্যমে গতি চিহ্নিতকরণ সক্ষম করে RSI এর দীর্ঘমেয়াদী বৈধতা বজায় রাখে
সহজ এবং স্বজ্ঞাত কৌশল নিয়ম যা বাস্তবায়ন করা সহজ এবং বিভিন্ন বাজারের পরিবেশে ভাল কাজ করে
এই কৌশলটির প্রধান ঝুঁকিগুলি হলঃ
α এর ভুল সেটিং অত্যধিক বিলম্ব বা অতিরিক্ত ফিল্টারিংয়ের দিকে পরিচালিত করতে পারে, যার ফলে দামের পরিবর্তনগুলি মিস করা যায়
অস্থির বাজারে ঘন ঘন ট্রেডিং ক্ষতি হতে পারে
দীর্ঘমেয়াদী স্থিতিশীল শীর্ষ বাজারগুলিতে কিছু উত্থানের সুযোগ মিস করা যেতে পারে
এই কৌশল নিম্নলিখিত দিক থেকে অপ্টিমাইজ করা যেতে পারেঃ
মেশিন লার্নিং অ্যালগরিদম ব্যবহার করুন α সহগ সেটিং অপ্টিমাইজ করার জন্য
ক্ষতির ঝুঁকি কমাতে স্টপ লস মেকানিজম যুক্ত করুন
মিথ্যা সংকেত ফিল্টার করার জন্য অন্যান্য সূচক একত্রিত করুন
নির্দিষ্ট পর্যায়ে মুনাফা নিশ্চিত করার জন্য পরিমাণগত শিথিলকরণ মডেল বাড়ানো
লাগুর আরএসআই কৌশলটি ফিল্টারিং প্রক্রিয়াগুলির মাধ্যমে ওভারকপিং এবং ওভারসোল্ড পরিস্থিতিগুলি কার্যকরভাবে সনাক্ত করে এবং ট্রেডিং সিগন্যালগুলি ইস্যু করার সময় গোলমাল থেকে হস্তক্ষেপ এড়ায়। এই সহজ এবং ব্যবহারিক কৌশলটির পরামিতিগুলির জন্য বড় অপ্টিমাইজেশান স্পেস রয়েছে এবং বিভিন্ন বাজারের পরিবেশে অভিযোজিত হতে পারে। এটি একটি প্রস্তাবিত ট্রেডিং কৌশল।
/*backtest start: 2022-12-12 00:00:00 end: 2023-12-18 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/ // © mertriver1 // Developer: John EHLERS //@version=3 // Author:Kıvanç Özbilgiç strategy("Laguerre RSI", shorttitle="LaRSI", overlay=false) src = input(title="Source", defval=close) alpha = input(title="Alpha", type=float, minval=0, maxval=1, step=0.1, defval=0.2) colorchange = input(title="Change Color ?", type=bool, defval=false) Date1 = input(true, title = "=== Date Backtesting ===") FromDay1 = input(defval = 1, title = "From Day", minval = 1, maxval = 31) FromMonth1 = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromYear1 = input(defval = 2020, title = "From Year", minval = 2017) ToDay1 = input(defval = 1, title = "To Day", minval = 1, maxval = 31) ToMonth1 = input(defval = 1, title = "To Month", minval = 1, maxval = 12) ToYear1 = input(defval = 9999, title = "To Year", minval = 2017) start1 = timestamp(FromYear1, FromMonth1, FromDay1, 00, 00) finish1 = timestamp(ToYear1, ToMonth1, ToDay1, 23, 59) window1() => time >= start1 and time <= finish1 ? true : false gamma=1-alpha L0 = 0.0 L0 := (1-gamma) * src + gamma * nz(L0[1]) L1 = 0.0 L1 := -gamma * L0 + nz(L0[1]) + gamma * nz(L1[1]) L2 = 0.0 L2 := -gamma * L1 + nz(L1[1]) + gamma * nz(L2[1]) L3 = 0.0 L3 := -gamma * L2 + nz(L2[1]) + gamma * nz(L3[1]) cu= (L0>L1 ? L0-L1 : 0) + (L1>L2 ? L1-L2 : 0) + (L2>L3 ? L2-L3 : 0) cd= (L0<L1 ? L1-L0 : 0) + (L1<L2 ? L2-L1 : 0) + (L2<L3 ? L3-L2 : 0) temp= cu+cd==0 ? -1 : cu+cd LaRSI=temp==-1 ? 0 : cu/temp Color = colorchange ? (LaRSI > LaRSI[1] ? green : red) : blue plot(100*LaRSI, title="LaRSI", linewidth=2, color=Color, transp=0) plot(20,linewidth=1, color=maroon, transp=0) plot(80,linewidth=1, color=maroon, transp=0) strategy.entry("Long", true, when = window1() and crossover(cu, cd)) strategy.entry("Short", false, when = window1() and crossunder(cu, cd))