দ্বি-মুখী বিপরীত কৌশল


সৃষ্টির তারিখ: 2023-11-02 16:47:08 অবশেষে সংশোধন করুন: 2023-11-02 16:47:08
অনুলিপি: 0 ক্লিকের সংখ্যা: 680
1
ফোকাস
1617
অনুসারী

দ্বি-মুখী বিপরীত কৌশল

ওভারভিউ

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

কৌশল নীতি

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

বিশেষ করে, এই কৌশলটিতে প্রবেশের দুটি নিয়ম রয়েছেঃ

  1. যদি সেই দিনের ওপেন মূল্য আগের দিনের ক্লোজ মূল্যের চেয়ে বেশি হয় (longCond1 পূরণ হয়) এবং রিটার্নিং টাইম উইন্ডোতে (window) পূরণ হয়), তাহলে ওপেন মূল্যের সাথে আগের দিনের পরিসরের 0.6 গুণ স্টপ লস কিনে (strategy.long1) ।

  2. যদি সেই দিনের ওপেনিং মূল্য আগের দিনের ক্লোজিং মূল্যের চেয়ে কম হয় (longCond2 পূরণ করা হয়) এবং রিটার্ন টাইম উইন্ডোর মধ্যে, ওপেনিং মূল্যের সাথে পূর্বের দিনের পরিসরের 1.8 গুণ স্টপ লস কিনে (strategy.long2) ।

এই কৌশলটি উপরের দুটি স্টপকে ট্রিগার করার পরে পজিশন খুলবে এবং তারপর strategy.close_all () দিয়ে পজিশনটি বন্ধ করে দেবে।

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

দুই দিকের বিপরীতমুখী কৌশলটির কিছু সুবিধা রয়েছেঃ

  1. বিপরীতমুখী ট্রেডিং ক্যাপচার, কোন দিকের পক্ষপাতিত্ব নেই। এই কৌশলটি একই সাথে দামের উত্থান এবং পতন উভয়ই বিবেচনা করে এবং বিভিন্ন দিকের বিপরীতমুখী ট্রেডিং ক্যাপচার করতে পারে।

  2. ঝুঁকি নিয়ন্ত্রণযোগ্য, স্টপ লস সুরক্ষা রয়েছে। কৌশলটি একটি স্টপ লস মূল্য আগে থেকেই সেট করে, যা একটি একক ব্যবসায়ের সর্বাধিক ক্ষতির কার্যকরভাবে নিয়ন্ত্রণ করতে পারে।

  3. প্রতিদিন খালি করুন, রাতারাতি ঝুঁকি এড়িয়ে চলুন। কৌশলটি হ’ল সেই দিনটি বন্ধ হওয়ার আগে পজিশনটি খালি করুন, রাতারাতি পজিশন না রাখলে রাতারাতি ব্যাপক ওঠানামা হওয়ার ঝুঁকি হ্রাস করতে পারে।

  4. উচ্চ ট্রেডিং ফ্রিকোয়েন্সি, সংক্ষিপ্ত লাইন অপারেশনের জন্য উপযুক্ত। প্রতিদিন মাত্র একটি ট্রেডিং দিন রাখা, উচ্চ ট্রেডিং ফ্রিকোয়েন্সি নিশ্চিত করতে পারে।

  5. কৌশলগুলি সহজ, পরিষ্কার এবং সহজে বোঝা যায় এবং বাস্তবায়িত হয়।

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

কিন্তু এই দুই দিকের বিপরীতমুখী কৌশলের কিছু ঝুঁকি রয়েছে যা সম্পর্কে সতর্ক থাকা প্রয়োজনঃ

  1. ক্ষতির দূরত্বটি ভুলভাবে নির্বাচিত হলে ক্ষতির দূরত্বটি ভেঙে যেতে পারে। যদি ক্ষতির দূরত্বটি খুব ছোট হয় তবে চরম ক্ষেত্রে ক্ষতির কারণ হতে পারে।

  2. ট্রেডিং ফ্রিকোয়েন্সি বেশি হলে ট্রেডিং ফি চাপে পড়তে পারে। প্রতিদিন পজিশন খোলার জন্য উচ্চ ফ্রিকোয়েন্সি ট্রেডিংয়ের জন্য আরও বেশি ফি জমা হতে পারে।

  3. বড় ধরনের ঝড়ের প্রবণতার অধীনে ক্ষতি বন্ধ করা সহজ। ঝড়ের পরিস্থিতিতে ক্ষতি বন্ধ করা সহজ, যার ফলে ক্ষতি হয়।

  4. প্রবণতা ক্যাপচার অব্যাহত রাখা অসম্ভব। এই কৌশলটি বিপরীতমুখী বাজারের জন্য আরও উপযুক্ত, প্রবণতা বিরতির পরে প্রবণতা লাভ ক্যাপচার অব্যাহত রাখা অসম্ভব।

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

এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ

  1. অপ্টিমাইজ করা স্টপ স্পেস: আপনি বিভিন্ন স্টপ অবস্থান পরীক্ষা করতে পারেন এবং সর্বোত্তম স্টপ স্পেস খুঁজে পেতে পারেন। আপনি বাজার অস্থিরতার উপর ভিত্তি করে স্টপ স্পেসের গতিশীলতা সামঞ্জস্য করতে পারেন।

  2. প্রবণতা ফিল্টার যোগ করুন। আপনি প্রবণতা নির্দেশক একটি বৃহত্তর স্তরের বিচার করতে পারেন এবং বিপরীতমুখী ট্রেডিং এড়াতে পারেন।

  3. পজিশন খোলার নিয়মের অপ্টিমাইজেশন। আপনি বিরতির আগে ঘন্টার সময় গ্রাফিকাল আকৃতির বিচার যুক্ত করতে বা পজিশন খোলার নির্ভুলতা বাড়ানোর জন্য পরিমাণগত লজিক্যাল বিচার যুক্ত করতে পারেন।

  4. হোল্ডিং অপ্টিমাইজেশান বাড়ান। আপনি চলমান স্টপ লস বা ট্রেন্ড ট্র্যাকিং এক্সআইটি যোগ করে পরীক্ষা করতে পারেন।

  5. বিভিন্ন লেনদেনের জাতের পরীক্ষা করুন। এই কৌশলটি উচ্চতর ওঠানামার জাতের জন্য আরও উপযুক্ত হতে পারে। আপনি বিভিন্ন জাতের ডেটা পরীক্ষা করে সেরা উপযুক্ত জাত খুঁজে পেতে পারেন।

  6. মেশিন লার্নিং প্রযুক্তির সাথে মিলিত। স্টপ লস দূরত্ব, খোলার নিয়ম ইত্যাদির মতো প্যারামিটারগুলি অপ্টিমাইজ করার জন্য মেশিন লার্নিং ব্যবহার করা যেতে পারে।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Simple strat", shorttitle="Simple Strat", overlay=true)

// X001TK R1 strategy
//
// 
// This strategy combines the special approach in previous daily range trading
//
// This strategy goes long on stop buy order which is calculated as previous day range
// multiplied by special number.
//
// This pure strategy does not have any
// stop loss or take profit money management logic.
//
// Exit rule is simple. We close the position on market close or next day open
//
// 
// 
//
// Input
length = input(10, minval=1)
stopLossPercent=input(1.1,"Stop Loss Percent")
profitPercent=input(9,"Profit Percent")


// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2018, title = "From Year", minval = 2000)
ToMonth   = input(defval = 3, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 2029, title = "To Year", minval = 2017)
ses_cls = input(defval=true, title="End of Session Close Out?")


// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true // create function "within window of time"


// === STRATEGY ===
// conditions
longCond1 = close>close[1]
longCond2 = close<close[1]


strategy.entry("long1", strategy.long, when=longCond1==true and window()==true, stop=close+(high - low)*0.6)
strategy.entry("long2", strategy.long, when=longCond2==true and window()==true, stop=close+(high - low)*1.8)
strategy.close_all(when=ses_cls)

// === /STRATEGY ===