এই কৌশলটি একটি পরিমাণগত ট্রেডিং সিস্টেম যা জেড-স্কোর পরিসংখ্যানগত পদ্ধতি, আপেক্ষিক শক্তি সূচক (আরএসআই) এবং সুপারট্রেন্ড সূচকগুলিকে একত্রিত করে। এই কৌশলটি বাজারে উচ্চ সম্ভাব্যতার ট্রেডিং সুযোগগুলি সনাক্ত করতে পরিসংখ্যানগত মূল্য বিচ্যুতি পর্যবেক্ষণ করে, গতির সূচক এবং প্রবণতা নিশ্চিতকরণকে একত্রিত করে। এই কৌশলটি কেবলমাত্র বাজারের অতিরিক্ত ক্রয় এবং অতিরিক্ত বিক্রয় সুযোগগুলিই ক্যাপচার করে না বরং প্রবণতা নিশ্চিতকরণের মাধ্যমে মিথ্যা সংকেতগুলি ফিল্টার করে, দ্বি-মুখী ট্রেডিং সক্ষম করে।
কৌশলটির মূল যুক্তিটি তিনটি প্রধান প্রযুক্তিগত সূচকের সহযোগিতার উপর নির্মিতঃ প্রথমত, এটি 75-পরিঘরের চলমান গড় এবং স্ট্যান্ডার্ড বিচ্যুতি ব্যবহার করে বর্তমান মূল্যের ঐতিহাসিক গড় থেকে বিচ্যুতি পরিমাপ করার জন্য মূল্যের Z- স্কোর গণনা করে। যখন Z- স্কোর 1.1 অতিক্রম করে বা -1.1-এর নীচে পড়ে, তখন এটি উল্লেখযোগ্য পরিসংখ্যানগত বিচ্যুতি নির্দেশ করে। দ্বিতীয়ত, RSI সূচকটি গতির নিশ্চিতকরণ হিসাবে চালু করা হয়, যার জন্য RSI নির্দেশের সাথে সারিবদ্ধ হতে হবে (RSI>60 দীর্ঘ অবস্থানের জন্য, RSI<40 সংক্ষিপ্ত অবস্থানের জন্য) । অবশেষে, সুপারট্রেন্ড সূচকটি একটি ট্রেন্ড ফিল্টার হিসাবে কাজ করে, যা 11-পরিঘরের ATR এবং 2.0 এর একটি গুণক ফ্যাক্টরের উপর ভিত্তি করে গণনা করা হয়। ট্রেডিং সংকেতগুলি শুধুমাত্র তখনই তৈরি করা হয় যখন তিনটি শর্ত একযোগে সন্তুষ্ট হয়।
এটি একটি পরিমাণগত ট্রেডিং কৌশল যা পরিসংখ্যানগত পদ্ধতি এবং প্রযুক্তিগত বিশ্লেষণকে একত্রিত করে, ট্রেডিং নির্ভরযোগ্যতা উন্নত করতে একাধিক সংকেত নিশ্চিতকরণ ব্যবহার করে। কৌশলটির মূল সুবিধাগুলি এর উদ্দেশ্যমূলক গাণিতিক মডেল এবং বিস্তৃত ঝুঁকি নিয়ন্ত্রণ প্রক্রিয়াগুলিতে রয়েছে, যখন প্যারামিটার অপ্টিমাইজেশন এবং বাজারের অভিযোজনযোগ্যতার প্রতি মনোযোগ দেওয়া উচিত। প্রস্তাবিত অপ্টিমাইজেশান দিকগুলির মাধ্যমে, আরও উন্নতির জন্য জায়গা রয়েছে, বিশেষত বাজারের পরিবেশে গতিশীলভাবে অভিযোজন এবং ঝুঁকি নিয়ন্ত্রণে। এই কৌশলটি উচ্চ অস্থিরতা এবং স্পষ্ট প্রবণতা সহ বাজারগুলির জন্য উপযুক্ত, এটি স্থিতিশীল রিটার্নের সন্ধানকারী পরিমাণগত ব্যবসায়ীদের জন্য এটি একটি মূল্যবান বিবেচনা করে।
/*backtest start: 2024-01-01 00:00:00 end: 2024-11-26 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Z-Score Long and Short Strategy with Supertrend", overlay=true) // Inputs for Z-Score len = input.int(75, "Z-Score Lookback Length") z_long_threshold = 1.1 // Threshold for Z-Score to open long z_short_threshold = -1.1 // Threshold for Z-Score to open short // Z-Score Calculation z = (close - ta.sma(close, len)) / ta.stdev(close, len) // Calculate Driver RSI driver_rsi_length = input.int(14, "Driver RSI Length") // Input for RSI Length driver_rsi = ta.rsi(close, driver_rsi_length) // Calculate the RSI // Supertrend Parameters atrPeriod = input.int(11, "ATR Length", minval=1) factor = input.float(2.0, "Factor", minval=0.01, step=0.01) // Supertrend Calculation [supertrend, direction] = ta.supertrend(factor, atrPeriod) // Conditions for Long and Short based on Z-Score z_exceeds_long = z >= z_long_threshold and driver_rsi > 60 z_exceeds_short = z <= z_short_threshold and driver_rsi < 40 // Entry Conditions if (z_exceeds_long and direction < 0) // Enter Long if Z-Score exceeds threshold and Supertrend is down strategy.entry("Long", strategy.long) label.new(bar_index, low, text="Open Long", style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small) alert("Open Long", alert.freq_once_per_bar) // Alert for Long entry if (z_exceeds_short and direction > 0) // Enter Short if Z-Score exceeds threshold and Supertrend is up strategy.entry("Short", strategy.short) label.new(bar_index, high, text="Open Short", style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small) alert("Open Short", alert.freq_once_per_bar) // Alert for Short entry // Plot Supertrend upTrend = plot(direction < 0 ? supertrend : na, "Up Trend", color=color.green, style=plot.style_linebr) downTrend = plot(direction > 0 ? supertrend : na, "Down Trend", color=color.red, style=plot.style_linebr) fill(upTrend, downTrend, color=color.new(color.green, 90), fillgaps=false) // Alert conditions for Supertrend changes (optional) alertcondition(direction[1] > direction, title='Downtrend to Uptrend', message='The Supertrend value switched from Downtrend to Uptrend') alertcondition(direction[1] < direction, title='Uptrend to Downtrend', message='The Supertrend value switched from Uptrend to Downtrend')