এই কৌশলটি প্রতিটি গ্রিড স্তরের মধ্যে শুরু মূল্য এবং শতাংশ নির্ধারণ করে ফিক্সড গ্রিড ট্রেডিং পদ্ধতি গ্রহণ করে। তারপর এটি কম-ক্রয়-উচ্চ-বিক্রয় গ্রিড ট্রেডিং কৌশল বাস্তবায়নের জন্য শতাংশের উপর ভিত্তি করে 10 স্থির ক্রয় এবং বিক্রয় মূল্য গণনা করে।
কৌশলটি প্রথমে শুরু মূল্য এবং গ্রিড দূরত্বের শতাংশ গ্রিড শতাংশ নির্ধারণ করে। তারপর এটি শুরু মূল্য এবং শতাংশের ভিত্তিতে 10 টি স্তরের ক্রয় এবং বিক্রয় মূল্য গণনা করে।
ক্রয় মূল্য সূত্রঃ
b1=sprice-(sprice*p1)
b2 = স্প্রাইস- ((স্প্রাইস*পি২)
b3=sprice-(sprice*p3)
…
যেখানে p1 ~ p10 হল গ্রিড শতাংশের ভিত্তিতে স্তর দ্বারা স্তর গণনা করা শতাংশ।
বিক্রয় মূল্য সূত্রঃ
s1=b1+(sprice*p1)
s2=b2+(sprice*p1)
s3=b3+(sprice*p1)
…
ক্রয় শর্ত তখনই সক্রিয় হয় যখন বন্ধের মূল্য ক্রয়ের মূল্যের চেয়ে কম হয়ঃ
if (close
strategy.entry ((
একইভাবে, যখন বন্ধ মূল্য বিক্রয় মূল্যের চেয়ে বেশি হয় তখন বিক্রয় শর্তটি ট্রিগার হয়ঃ
if (close>s1)
strategy.exit("b1", যখন=(close>s1))
এটি নিম্ন-ক্রয়-উচ্চ-বিক্রয় গ্রিড ট্রেডিং কৌশল বাস্তবায়ন করে।
ফিক্সড গ্রিড কৌশল নিম্নলিখিত সুবিধাগুলি আছেঃ
বাজারের সময় নির্ধারণ না করে স্বয়ংক্রিয় কম-খরিদ-উচ্চ-বিক্রয় অর্জন করে, ট্রেডিং অসুবিধা হ্রাস করে।
সঠিক গ্রিড দূরত্ব নির্ধারণ কার্যকরভাবে ঝুঁকি নিয়ন্ত্রণ করে এবং তাড়া এড়ায়।
বাজার উঠুক বা নামুক লাভজনক।
বিভিন্ন বাজারের অবস্থার জন্য গ্রিডের পরামিতিগুলি সামঞ্জস্য করার নমনীয়তা।
গ্রিড স্তর যোগ করে অবস্থানের আকার বাড়ানো।
স্টপ লস অন্তর্ভুক্ত করা চরম বাজার ইভেন্টে বিশাল ক্ষতি এড়ায়।
এই কৌশলের কিছু ঝুঁকিও রয়েছে:
ট্রেডিং ফি রেঞ্জ-বন্ড মার্কেটের সময় মুনাফা গ্রাস করে।
ভুল শুরু মূল্য এবং গ্রিড সেটিংস ক্ষতির দিকে পরিচালিত করে।
চরম পরিস্থিতিতে দামের পার্থক্য ক্ষতির কারণ হতে পারে।
যান্ত্রিক ট্রেডিংয়ে অর্ডার ইনসার্টিং ঝুঁকি থাকে।
ঘন ঘন ঘটনা ক্ষতি বাড়িয়ে তুলতে পারে।
সমাধান:
লাভ > ফি নিশ্চিত করার জন্য গ্রিড প্যারামিটার অপ্টিমাইজ করুন।
সর্বোত্তম প্রারম্ভিক মূল্য এবং গ্রিড দূরত্ব খুঁজে বের করার জন্য ব্যাকটেস্ট।
ঝুঁকি নিয়ন্ত্রণে স্টপ লস যোগ করুন।
অর্ডার মূল্যকে শান্ত করুন যাতে এটি ঢোকানো না হয়।
সর্বাধিক ক্ষতির সীমা নির্ধারণ করতে ঝুঁকি নিয়ন্ত্রণ সেট করুন।
কৌশলটি নিম্নলিখিত উপায়ে উন্নত করা যেতে পারেঃ
অস্থিরতার উপর ভিত্তি করে গ্রিড দূরত্ব গতিশীলভাবে সামঞ্জস্য করুন।
গতিশীলভাবে শুরু মূল্য সেট করার জন্য মূল্য পরিসীমা গণনা করুন।
মূল্য পূর্বাভাস এবং গ্রিড সামঞ্জস্য করতে এমএল মডেল যোগ করুন।
ঐতিহাসিক স্টপ লস পয়েন্টের উপর ভিত্তি করে স্টপ লস অপ্টিমাইজ করুন।
মুনাফা স্তরের উপর ভিত্তি করে পজিশনের আকার অন্তর্ভুক্ত করুন।
মূলধন ব্যবহারকে সর্বোচ্চতর করতে পজিশন ম্যানেজমেন্টের অপ্টিমাইজেশান।
প্রভাবের খরচ কমানোর জন্য TWAP ব্যবহার করে কার্যকরকরণ উন্নত করা।
কৌশলটি শুরু মূল্য এবং গ্রিড শতাংশের উপর ভিত্তি করে ক্রয় এবং বিক্রয় মূল্য নির্ধারণ করে স্থির গ্রিড ট্রেডিং বাস্তবায়ন করে, স্বয়ংক্রিয় কম-ক্রয়-উচ্চ-বিক্রয় অর্জন করে। মুনাফা লকিং এবং ক্ষতি নিয়ন্ত্রণের জন্য পরামিতি, গতিশীল সমন্বয় এবং স্টপ লস অপ্টিমাইজ করার মাধ্যমে ঝুঁকি পরিচালনা করা গুরুত্বপূর্ণ। উন্নত এমএল এবং অর্থ পরিচালনার কৌশলগুলি অন্তর্ভুক্ত করা কৌশল লাভজনকতা এবং জয়ের হারকে আরও উন্নত করতে পারে।
/*backtest start: 2022-11-09 00:00:00 end: 2023-11-15 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/ // © Lionkind //@version=5 strategy("Grid HW", overlay = true, margin_long = 1, margin_short = 1) // Fix 35k price as starting point and 1% as a distance sprice=input(40500,"Starting price") gridpercent=input(1,"Percent") // calculate the % of the 10 layers p1=((gridpercent*1)/100) p2=((gridpercent*2)/100) p3=((gridpercent*3)/100) p4=((gridpercent*4)/100) p5=((gridpercent*5)/100) p6=((gridpercent*6)/100) p7=((gridpercent*7)/100) p8=((gridpercent*8)/100) p9=((gridpercent*9)/100) p10=((gridpercent*10)/100) //set buy prices b1=sprice-(sprice*p1) b2=sprice-(sprice*p2) b3=sprice-(sprice*p3) b4=sprice-(sprice*p4) b5=sprice-(sprice*p5) b6=sprice-(sprice*p6) b7=sprice-(sprice*p7) b8=sprice-(sprice*p8) b9=sprice-(sprice*p9) b10=sprice-(sprice*p10) //set sell prices s1=b1+(sprice*p1) s2=b2+(sprice*p1) s3=b3+(sprice*p1) s4=b4+(sprice*p1) s5=b5+(sprice*p1) s6=b6+(sprice*p1) s7=b7+(sprice*p1) s8=b8+(sprice*p1) s9=b9+(sprice*p1) s10=b10+(sprice*p1) //Long conditions lc1=close<b1 lc2=close<b2 lc3=close<b3 lc4=close<b4 lc5=close<b5 lc6=close<b6 lc7=close<b7 lc8=close<b8 lc9=close<b9 lc10=close<b10 //exit conditions ec1=close>s1 ec2=close>s2 ec3=close>s3 ec4=close>s4 ec5=close>s5 ec6=close>s6 ec7=close>s7 ec8=close>s8 ec9=close>s9 ec10=close>s10 //long orders if (lc1) strategy.entry("b1", strategy.long, when=(lc1)) if (lc2) strategy.entry("b2", strategy.long, when=(lc2)) if (lc3) strategy.entry("b3", strategy.long, when=(lc3)) if (lc4) strategy.entry("b4", strategy.long, when=(lc4)) if (lc5) strategy.entry("b5", strategy.long, when=(lc5)) if (lc6) strategy.entry("b6", strategy.long, when=(lc6)) if (lc7) strategy.entry("b7", strategy.long, when=(lc7)) if (lc8) strategy.entry("b8", strategy.long, when=(lc8)) if (lc9) strategy.entry("b9", strategy.long, when=(lc9)) if (lc10) strategy.entry("b10", strategy.long, when=(lc10)) //exit orders if (ec1) strategy.exit("b1", when=(ec1), limit=1) if (ec2) strategy.exit("b2", when=(ec2), limit=1) if (ec3) strategy.exit("b3", when=(ec3), limit=1) if (ec4) strategy.exit("b4", when=(ec4), limit=1) if (ec5) strategy.exit("b5", when=(ec5), limit=1) if (ec6) strategy.exit("b6", when=(ec6), limit=1) if (ec7) strategy.exit("b7", when=(ec7), limit=1) if (ec8) strategy.exit("b8", when=(ec8), limit=1) if (ec9) strategy.exit("b9", when=(ec9), limit=1) if (ec10) strategy.exit("b10", when=(ec10), limit=1) plot(b1,color=color.green) plot(s1, color=color.red) plot(b2, color=color.purple)