গতিশীল RSI আয়তক্ষেত্রাকার গ্রিড কৌশল


সৃষ্টির তারিখ: 2023-10-30 11:29:30 অবশেষে সংশোধন করুন: 2023-10-30 11:29:30
অনুলিপি: 0 ক্লিকের সংখ্যা: 1022
1
ফোকাস
1617
অনুসারী

গতিশীল RSI আয়তক্ষেত্রাকার গ্রিড কৌশল

ওভারভিউ

এই কৌশলটি গ্রিড বটের মতো একটি কৌশল যা মূলত অ্যালগরিদমিক ট্রেডিংয়ের জন্য ব্যবহৃত হয়। এটি একটি গতিশীল, অ-সমান ব্যবধানের গ্রিড গ্রিড ব্যবহার করে যা লেনদেনের পরিমাণের উপর ভিত্তি করে গণনা করা হয় এবং কেবলমাত্র যখন আরএসআই নির্দিষ্ট শর্ত পূরণ করে তখনই গ্রিড আপডেট করা হয়। এটি সাধারণ গ্রিড বটের বিপরীতে বিরতিযুক্ত লেনদেনের বৈশিষ্ট্যও রয়েছে (সাধারণত গ্রিড বট উচ্চতর গ্রিড লাইনে পৌঁছলে বিক্রি হয়, এবং এই কৌশলটি নির্দিষ্ট শর্তে নিম্নতর গ্রিড লাইনে নেমে গেলে বিক্রি হয়) । এই কৌশলটি সমস্ত পিরামিডের অর্ডারগুলিও সমাপ্তির সময় স্থির করে দেয়।

সংক্ষেপে বলতে গেলে, এই কৌশলটি যখনই RSI ক্রয়/বিক্রয় সংকেত লাইন অতিক্রম করে, তখন এটি আপনার দেওয়া ডেটা উত্সের (সেট করা “src”) উপর ভিত্তি করে গ্রিডটি আপডেট করে সর্বোচ্চ/ন্যূনতম মূল্য হিসাবে গণনা করা হয়। এটি এই ব্যাপ্তির উপর ভিত্তি করে 5 টি সমান দূরত্বের লাইন তৈরি করে এবং বর্তমান ডেটা উত্সটি ব্যবহার করে নির্ধারণ করে যে ডেটা উত্সটি সবচেয়ে কাছাকাছি অবস্থিত। যদি ডেটা উত্সটি বর্তমান লাইনের উপরে অবস্থিত লাইনটি ভেঙে দেয় তবে এটি একটি ক্রয় সংকেত দেয়; যদি ডেটা উত্সটি পড়ে তবে এটি বর্তমান লাইনের নীচে অবস্থিত লাইনটি ভেঙে দেয় তবে এটি একটি বিক্রয় সংকেত দেয়।

আপনি আপনার সেটিংসের মধ্যে কনফিগার করতে পারেন যে আপনি খালি, ডাটা উৎস, আরএসআই চক্রের দৈর্ঘ্য এবং ওভারবই ওভারসেল লাইন ব্যবহার করছেন কিনা।

কৌশল নীতি

এই কৌশলটির মূল যুক্তি হলঃ

  1. RSI সূচক ব্যবহার করে ট্রেন্ড বিপরীত দিকটি নির্ধারণ করুন এবং নিশ্চিতকরণ সংকেত হিসাবে RSI লাইনটি অতিক্রম করে সেট করা ওভার-বই অঞ্চল বা ওভার-বিক্রয় অঞ্চল।

  2. RSI নিশ্চিতকরণ সংকেত উপস্থিত হলে, একটি নির্দিষ্ট সময়ের মধ্যে সর্বোচ্চ এবং সর্বনিম্ন মূল্য রেকর্ড করুন, এটি গ্রিডের নীচের সীমা হিসাবে সেট করুন।

  3. এই রেখাগুলোকে পাঁচটি ভাগে ভাগ করা হয়েছে, যার মধ্যে কোনটি সর্বোচ্চ এবং কোনটি সর্বনিম্ন সীমাবদ্ধতার কাছাকাছি।

  4. যখন দাম গ্রিড লাইনের উপরের লাইনে ভেঙে যায়, তখন অতিরিক্ত প্রবেশ করুন; যখন দাম গ্রিড লাইনের নীচের লাইনে পড়ে, তখন খালি অবস্থানে প্রবেশ করুন।

  5. গ্রিড ব্রেকিংয়ের জন্য গ্রিড বোট ব্যবহার করুন, গ্রিড স্পর্শ করার পরিবর্তে।

  6. রাতারাতি ঝুঁকি এড়ানোর জন্য, ট্রেডিং দিবসের শেষের দিকে সমস্ত পিরামিড অর্ডার বন্ধ রাখুন।

এই কৌশলটি মূলত নিম্নলিখিত অংশগুলি নিয়ে গঠিতঃ

  1. ইনপুট প্যারামিটার সেটিংঃ ডেটা উত্স, আরএসআই প্যারামিটার, অতিরিক্ত ফাঁকা বিকল্প ইত্যাদি অন্তর্ভুক্ত করুন

  2. RSI সূচক গণনাঃ RSI সূচক গণনা করুন এবং বিচার করুন যে এটি একটি ক্রসিং সংকেত দেয় কিনা।

  3. ডায়নামিক গ্রিড সেটিংঃ RSI সংকেত ঘটার সময় মূল্যের পরিসর রেকর্ড করুন এবং গ্রিড লাইন গণনা করুন।

  4. সিগন্যাল বিচারঃ দাম গ্রিডের উপর বা নিচে ভেঙে গেছে কিনা তা সনাক্ত করুন, এবং অতিরিক্ত ফাঁকা সংকেত তৈরি করুন।

  5. অর্ডার ম্যানেজমেন্টঃ একাধিক শূন্য সংকেত প্রেরণ করুন এবং পিরামিডের অর্ডারগুলি বন্ধ হওয়ার আগে স্থির করুন।

  6. ম্যাপিং ইন্টারফেসঃ গ্রিড লাইন প্রদর্শন, অতিরিক্ত ফাঁকা এলাকা ইত্যাদি।

গতিশীলভাবে গ্রিড আপডেট করে, আরএসআই সূচকের সাথে মিলিত ট্রেন্ড বিচার এবং বিরতি সংকেত দিয়ে, কৌশলটি কার্যকরভাবে ট্রেন্ডকে ট্র্যাক করতে এবং বিপরীত হওয়ার সময় সময়মত দিকনির্দেশ করতে সক্ষম করে। বন্ধ হওয়ার আগে প্লেইন করা কার্যকরভাবে রাতারাতি ঝুঁকি নিয়ন্ত্রণ করতে পারে।

সামর্থ্য বিশ্লেষণ

এই কৌশলটির প্রধান সুবিধাগুলি হলঃ

  1. গতিশীল গ্রিডগুলি প্রবণতাগুলির সাথে খাপ খাইয়ে নিতে পারে এবং স্থির-অবস্থাশীল গ্রিডের চেয়ে আরও স্থিতিশীল।

  2. কেবলমাত্র যখন RSI ট্রেন্ড রিভার্সনের বিষয়টি নিশ্চিত করে তখনই গ্রিডটি সামঞ্জস্য করা যায়, যাতে কিছু গোলমালের সংকেত ফিল্টার করা যায়।

  3. ট্রেন্ডের বিপরীত দিকগুলোকে আরও সঠিকভাবে ধরার জন্য কেবলমাত্র স্পর্শের পরিবর্তে ব্রেকিং সিগন্যাল ব্যবহার করা যেতে পারে।

  4. “অবশ্যই, আমরা আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য আমাদের বিনিয়োগের জন্য” “

  5. আরএসআই সূচকটি ওভারবয় ওভারসোলের ক্ষেত্রে আরও ভাল বিচার করতে পারে এবং গতিশীল গ্রিডের সাথে একত্রিত হয়ে ভাল কাজ করে।

  6. প্রবণতার শুরুতে প্রবেশের জন্য একটি ভাল সুযোগের জন্য, বিপর্যয় মোডের পরিবর্তে বিপর্যয় মোড ব্যবহার করুন।

  7. গ্রিড স্পেসিফিকেশন এবং ট্রেডিং ভলিউম অনুপাতের সমন্বয় কৌশলটির ঝুঁকি-লাভের বৈশিষ্ট্যগুলিকে নমনীয়ভাবে সামঞ্জস্য করতে দেয়।

  8. গ্রাফিকাল ইন্টারফেসটি গ্রিডের বন্টন এবং অতিরিক্ত খালি জায়গা প্রদর্শন করে।

  9. বিভিন্ন ব্যবসায়ীর চাহিদা পূরণের জন্য ক্যোয়ারী খোলার বিকল্প রয়েছে

  10. নিয়মগুলি সহজ, স্পষ্ট, সহজেই বোঝা যায় এবং অ্যালগরিদমিক ট্রেডিংয়ের জন্য উপযুক্ত।

উপরোক্ত সুবিধাগুলি এই কৌশলটিকে স্বয়ংক্রিয়ভাবে ট্রেন্ড অনুসরণ করতে এবং ঝুঁকি নিয়ন্ত্রণ করতে সক্ষম করে, যা পরিমাণগত লেনদেনের বাস্তব ক্ষেত্রের প্রয়োগের জন্য উপযুক্ত।

ঝুঁকি বিশ্লেষণ

এই কৌশলটির কিছু সম্ভাব্য ঝুঁকি রয়েছে যা সম্পর্কে সতর্ক হওয়া দরকারঃ

  1. বড় ধরনের ঝড়ের প্রবণতার মধ্যে, স্টপ লস ঝুঁকি থাকতে পারে। স্টপ লস পরিসীমা যথাযথভাবে প্রশস্ত করা যেতে পারে, অথবা ঝড়ের সময় কৌশল স্থগিত করা যেতে পারে।

  2. রাতের বেলা বড় আকারের ঝাঁকুনি দেখা দিতে পারে, যার ফলে বড় পজিশন খোলা যায়। এই ঝুঁকি এড়াতে পজিশন অনুপাত হ্রাস করার বিষয়টি বিবেচনা করা যেতে পারে।

  3. অপ্রয়োজনীয় প্যারামিটার সেট করলে ট্রেডিং ফ্রিকোয়েন্সি বা সিগন্যালের ত্রুটি হতে পারে। অপ্টিমাইজেশান প্যারামিটারগুলি সাবধানতার সাথে পরীক্ষা করা উচিত।

  4. ট্রেডিং ফি বেশি হলে, ট্রেডিং মুনাফা বারবার খাওয়া হতে পারে। ট্রেডিং সংখ্যা যথাযথভাবে সামঞ্জস্য করা উচিত বা কম ফিযুক্ত এক্সচেঞ্জ নির্বাচন করা উচিত।

  5. ব্রেকআপের সংকেত ট্রেন্ডের বিপরীত দিক থেকে কিছুটা দেরিতে আসতে পারে, যার জন্য একটি যুক্তিসঙ্গত ব্রেকআপের মাত্রা নির্ধারণ করা প্রয়োজন।

  6. স্টক মার্কেটের স্থিতিশীল ওঠা পর্যায়ে এই কৌশলটি ভাল কাজ করতে পারে না। অন্যান্য সূচক প্যাকেজের সাথে ব্যবহার করার কথা বিবেচনা করা যেতে পারে।

  7. বড় পজিশন এবং পিরামিড পজিশন সমর্থন করার জন্য পর্যাপ্ত তহবিল প্রয়োজন, অন্যথায় এটি কার্যকর হবে না। পজিশনটি তহবিলের পরিমাণ অনুসারে সামঞ্জস্য করা উচিত।

প্রতিকারঃ

  1. প্যারামিটার অপ্টিমাইজ করুন, লেনদেনের ঘনত্ব হ্রাস করুন এবং অতিরিক্ত লেনদেন প্রতিরোধ করুন।

  2. ট্রেন্ডিং ইন্ডিকেটর ব্যবহার করুন এবং অস্থিরতার সময় ট্রেডিং এড়িয়ে চলুন।

  3. পজিশনের পরিবর্তন, একক লেনদেনের অনুপাত হ্রাস, ঝুঁকি নিয়ন্ত্রণ।

  4. সময়মততা এবং স্থায়িত্বের মধ্যে ভারসাম্য বজায় রাখার জন্য বিভিন্ন ব্রেকথ্রু এম্পিটিউড প্যারামিটার পরীক্ষা করা।

  5. অন্যান্য সূচকগুলির সাথে সমন্বয় করার কথা বিবেচনা করা যেতে পারে যাতে বাজার সম্পর্কে আরও তথ্য পাওয়া যায়।

  6. তহবিল বাড়ানো, পজিশনের আকার বাড়ানো, মুনাফার সুযোগ বাড়ানো।

প্যারামিটার অপ্টিমাইজেশান, ঝুঁকি ব্যবস্থাপনা এবং অন্যান্য কৌশলগুলির সাথে সমন্বয়ের মাধ্যমে, কৌশলটির ঝুঁকি কিছুটা হ্রাস করা যেতে পারে, যাতে এটি স্থিতিশীলভাবে কাজ করতে পারে।

অপ্টিমাইজেশান দিক

এই কৌশলটি আরও উন্নত করা যেতে পারে নিম্নলিখিত উপায়েঃ

  1. আরএসআই প্যারামিটারগুলিকে অনুকূলিত করুন, বিভিন্ন আরএসআই চক্রের দৈর্ঘ্য পরীক্ষা করুন এবং সর্বোত্তম প্যারামিটার সমন্বয় খুঁজুন।

  2. বিভিন্ন গ্রিড স্পেসিং সেটিং পরীক্ষা করুন এবং সর্বোত্তম রিটার্ন-ঝুঁকি অনুপাতের গ্রিড খুঁজে বের করুন।

  3. অন্য সূচক যেমন MACD, KD ইত্যাদির সাথে মিলিত করে সঠিকতা বাড়ানোর চেষ্টা করুন।

  4. বাজারের অস্থিরতার উপর ভিত্তি করে স্টপ লসকে গতিশীলভাবে সামঞ্জস্য করার জন্য একটি অভিযোজিত স্টপ লস কৌশল তৈরি করুন।

  5. পজিশন খোলার শর্ত বাড়ানো, শুধুমাত্র যখন প্রবণতা যথেষ্ট স্পষ্ট হয় তখন পজিশন খোলার, যাতে পজিশনে ধরা না পড়ে।

  6. রিটার্নিং অপ্টিমাইজেশান, দীর্ঘ সময়কালের ডেটা পরীক্ষা করা, প্যারামিটার স্থিতিশীলতা মূল্যায়ন করা।

  7. মেশিন লার্নিং-ভিত্তিক গতিশীল প্যারামিটার অপ্টিমাইজেশনের চেষ্টা করুন, যাতে কৌশলগুলি বিভিন্ন বাজারের পরিস্থিতির সাথে খাপ খাইয়ে নেয়।

  8. বিকল্পের সাথে যুক্ত কৌশলগুলি অন্বেষণ করুন, বিকল্পগুলি ব্যবহার করে পজিশনের ঝুঁকিগুলিকে সুরক্ষিত করুন।

  9. সাম্প্রতিক পরিস্থিতির উপর ভিত্তি করে প্যারামিটার অপ্টিমাইজেশন কৌশলগুলিকে সামঞ্জস্য করুন এবং কৌশলগুলি কার্যকর রাখুন।

  10. দ্রুত অপ্টিমাইজেশান টেস্টের জন্য গ্রাফিকাল কৌশল অপ্টিমাইজেশান প্ল্যাটফর্ম তৈরি করা।

স্বয়ংক্রিয় পরামিতি অপ্টিমাইজেশান, কৌশল সমন্বয় এবং আরও বাজার তথ্য প্রবর্তনের মাধ্যমে, কৌশলটি আরও ভাল স্থিতিশীলতা এবং লাভের হার অর্জন করতে পারে এবং সত্যিকারের নির্ভরযোগ্য পরিমাণগত ব্যবসায়ের কৌশল হয়ে উঠতে পারে।

সারসংক্ষেপ

সামগ্রিকভাবে, আরএসআই রাইট গ্রিড কৌশলটি আরএসআই সূচকগুলি ব্যবহার করে ট্রেন্ড রিভার্স কনফার্মেশন সংকেত নির্ধারণ করে, দামের ব্যাপ্তির গতিশীল গ্রিড সেট করে, গ্রিড লাইনটি ভেঙে গেলে ট্রেড করে, এবং দিনের মধ্যে সম্পূর্ণরূপে খালি হয়ে যায়, একটি নমনীয় ট্রেন্ড ট্র্যাকিং অ্যালগরিদম ট্রেডিং কৌশল গঠন করে। স্থির গ্রিড কৌশলের তুলনায় এটি বাজারের পরিবর্তনের সাথে আরও ভালভাবে খাপ খায়।

এই কৌশলটির কিছু সুবিধা রয়েছে, যার মধ্যে রয়েছে RSI সূচকের প্রবণতা বিচার, গতিশীল গ্রিডের অভিযোজন, বিরতি প্যাটার্ন ট্রেডিং এবং অভ্যন্তরীণ সম্পূর্ণ প্যাসিং ইত্যাদি। এটি কার্যকরভাবে প্রবণতা অনুসরণ করতে এবং ঝুঁকি নিয়ন্ত্রণ করতে সক্ষম করে। তবে এই কৌশলটিতে কিছু সম্ভাব্য ঝুঁকিও রয়েছে যা সতর্কতা অবলম্বন করা দরকার, যেমন ঝড়ের প্রবণতার অধীনে ক্ষতির ঝুঁকি, রাতারাতি উড়ে যাওয়ার ঝুঁকি ইত্যাদি। এই ঝুঁকিগুলি প্যারামিটার অপ্টিমাইজেশন, অন্যান্য সংকেত এবং ঝুঁকি পরিচালনার উপায়গুলির সাথে একত্রিত করে হ্রাস করা যেতে পারে।

এই কৌশলটির আরও অনেক অপ্টিমাইজেশান রয়েছে, যা আরও সূচক, মেশিন লার্নিং অপ্টিমাইজেশান প্যারামিটার এবং গ্রাফিক্যাল ফিডব্যাক প্ল্যাটফর্মের মাধ্যমে একটি আরও স্থিতিশীল, উচ্চতর উপার্জনকারী অ্যালগরিদম ট্রেডিং কৌশল হিসাবে অপ্টিমাইজ করা যেতে পারে। সামগ্রিকভাবে, এই কৌশলটি পরিমাণযুক্ত ট্রেডিংয়ের জন্য একটি নির্ভরযোগ্য, সহজেই পরিচালনাযোগ্য ট্রেন্ড ট্র্যাকিং অ্যালগরিদম ফ্রেমওয়ার্ক সরবরাহ করে।

কৌশল সোর্স কোড
/*backtest
start: 2023-09-29 00:00:00
end: 2023-10-29 00:00:00
period: 1h
basePeriod: 15m
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/
// © wbburgin

//@version=5
// strategy("RSI Box Strategy (pseudo-Grid Bot)", overlay=true, initial_capital = 10000, 
//  default_qty_type = strategy.percent_of_equity, default_qty_value = 1, pyramiding = 33, commission_value=0.10)

src = input.source(close,"Source")
rsiLength = input.int(14,"RSI Length")
oblvl = input.int(70,"Overbought Level")
oslvl = input.int(30,"Oversold Level")
useShorts = input.bool(false,"Use Shorts",inline="B")
showGrid = input.bool(false,"Show Grid",inline="B")

rsi = ta.rsi(src,rsiLength)

rsi_crossdn = ta.crossunder(rsi,oblvl)
rsi_crossup = ta.crossover(rsi,oslvl)

highest = ta.vwma(ta.highest(src,rsiLength),rsiLength)
lowest = ta.vwma(ta.lowest(src,rsiLength), rsiLength)

gridTop = ta.valuewhen(rsi_crossdn,highest,0)
gridBottom = ta.valuewhen(rsi_crossup,lowest,0)
gridMiddle = math.avg(gridTop,gridBottom)
gridMidTop = math.avg(gridMiddle,gridTop)
gridMidBottom = math.avg(gridMiddle,gridBottom)

diff1 = math.abs(src - gridTop)
diff2 = math.abs(src - gridBottom)
diff3 = math.abs(src - gridMiddle)
diff4 = math.abs(src - gridMidTop)
diff5 = math.abs(src - gridMidBottom)

minDiff = math.min(diff1, diff2, diff3, diff4, diff5)

// Determine which line is the closest
float closestLine = na
if minDiff == diff1
    closestLine := gridTop
else if minDiff == diff2
    closestLine := gridBottom
else if minDiff == diff3
    closestLine := gridMiddle
else if minDiff == diff4
    closestLine := gridMidTop
else if minDiff == diff5
    closestLine := gridMidBottom

buyCrosses = ta.crossover(src,gridTop) or ta.crossover(src,gridBottom) or ta.crossover(src,gridMiddle) or ta.crossover(src,gridMidTop) or ta.crossover(src,gridMidBottom)
sellCrosses= ta.crossunder(src,gridTop) or ta.crossunder(src,gridBottom) or ta.crossunder(src,gridMiddle) or ta.crossunder(src,gridMidTop) or ta.crossunder(src,gridMidBottom)

condition_bull = buyCrosses
condition_bear = sellCrosses

var float bull_status_line = na
var float bear_status_line = na
var float bull_buy_line = na
var float bear_sell_line = na

if condition_bull
    bull_status_line := closestLine
if condition_bear
    bear_status_line := closestLine

if bull_status_line == gridBottom
    bull_buy_line := gridMidBottom
if bull_status_line == gridMidBottom
    bull_buy_line := gridMiddle
if bull_status_line == gridMiddle
    bull_buy_line := gridMidTop
if bull_status_line == gridMidTop
    bull_buy_line := gridTop

if bear_status_line == gridTop
    bear_sell_line := gridMidTop
if bear_status_line == gridMidTop
    bear_sell_line := gridMiddle
if bear_status_line == gridMiddle
    bear_sell_line := gridMidBottom
if bear_status_line == gridMidBottom
    bear_sell_line := gridBottom

l = ta.crossover(src,bull_buy_line)
s = ta.crossunder(src,bear_sell_line)

if l
    strategy.entry("Long",strategy.long)
if s
    strategy.close("Long")
    if useShorts
        strategy.entry("Short",strategy.short)

// Plotting
in_buy = ta.barssince(l) < ta.barssince(s)
u=plot(bull_buy_line,color=na,title="Buy Plot")
d=plot(bear_sell_line,color=na,title="Sell Plot")

plot(not showGrid?na:gridBottom,color=color.new(color.white,75),title="Grid Line -2")
plot(not showGrid?na:gridMidBottom,color=color.new(color.white,75),title="Grid Line -1")
plot(not showGrid?na:gridMiddle,color=color.new(color.white,75),title="Grid Line 0")
plot(not showGrid?na:gridMidTop,color=color.new(color.white,75),title="Grid Line 1")
plot(not showGrid?na:gridTop,color=color.new(color.white,75),title="Grid Line 2")


fill(u,d,color=in_buy ? color.new(color.lime,75) : color.new(color.red,75))