এই কৌশলটি কৃত্রিম বুদ্ধিমত্তা প্রযুক্তিকে অন্তর্ভুক্ত করে একটি উন্নত ট্রেন্ড-পরবর্তী ট্রেডিং সিস্টেম, মূলত ভিপিএস (ভোলাটিলিটি প্রাইস সিস্টেম) বিচ্যুতি সূচক এবং WOW ট্রেন্ড পদ্ধতিকে একীভূত করে। এটি সম্ভাব্য মূল্য বিপরীত পয়েন্ট সনাক্ত করতে আরএসআই বিচ্যুতিকে একত্রিত করার সময় বাজারের অস্থিরতা এবং প্রবণতা শক্তি সনাক্ত করতে ভিপিএস ব্যবহার করে। কৌশলটি দীর্ঘ এবং সংক্ষিপ্ত উভয় ব্যবসায়ের জন্য সুনির্দিষ্ট এন্ট্রি সংকেত সরবরাহ করতে পারে, ট্রেন্ড গতি এবং বিচ্যুতি বিশ্লেষণ উভয়ই ব্যবহার করে বাজারের পূর্বাভাসের নির্ভুলতা বাড়িয়ে তুলতে পারে।
কৌশলটি তিনটি মূল উপাদানগুলির উপর ভিত্তি করে কাজ করেঃ
সিস্টেমটি প্রথমে এটিআর-এর উপর ভিত্তি করে গতিশীল সমর্থন এবং প্রতিরোধ চ্যানেলগুলি গণনা করে, বাজারের অবস্থার মূল্যায়নের জন্য ভিপিএস দৈর্ঘ্যের পরামিতি (ডিফল্ট 11) এর সাথে একত্রিত হয়। যখন দাম ওভারবয়ড (78) বা ওভারসোল্ড (27) স্তরগুলি অতিক্রম করে, তখন সিস্টেমটি ট্রেডিং সংকেতগুলি ট্রিগার করে। অতিরিক্তভাবে, কৌশলটি দাম এবং ভিপিএস সূচকের মধ্যে বিচ্যুতি পর্যবেক্ষণ করে বাণিজ্যের দিকটি আরও নিশ্চিত করতে।
এটি একটি বিস্তৃত ট্রেডিং কৌশল যা একাধিক প্রযুক্তিগত সূচক এবং বিশ্লেষণাত্মক পদ্ধতিকে একীভূত করে। প্রচলিত প্রযুক্তিগত বিশ্লেষণের সাথে কৃত্রিম বুদ্ধিমত্তা প্রযুক্তিকে একত্রিত করে, কৌশলটি স্থিতিশীলতা বজায় রেখে উচ্চ ট্রেডিং নির্ভুলতা সরবরাহ করতে পারে। মূল সুবিধাগুলি এর মাল্টি-লেয়ার সিগন্যাল নিশ্চিতকরণ প্রক্রিয়া এবং বিস্তৃত ঝুঁকি ব্যবস্থাপনা ব্যবস্থায় রয়েছে, যখন অপ্টিমাইজেশনের প্রধান ক্ষেত্রগুলি গতিশীল পরামিতি সামঞ্জস্য এবং বাজার পরিবেশের স্বীকৃতি। ক্রমাগত অপ্টিমাইজেশন এবং উন্নতির মাধ্যমে, এই কৌশলটির বিভিন্ন বাজারের অবস্থার মধ্যে স্থিতিশীল কর্মক্ষমতা বজায় রাখার সম্ভাবনা রয়েছে।
/*backtest start: 2024-11-26 00:00:00 end: 2024-12-25 08:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=6 strategy("AI+VPS Vijay Prasad Strategy", overlay=true) // --- VPS Divergence Strategy Inputs --- vps_length = input.int(11, title="VPS Length") vps_overbought = input.int(78, title="VPS Overbought Level") // Overbought level for VPS vps_oversold = input.int(27, title="VPS Oversold Level") // Oversold level for VPS // Calculate VPS (Relative Strength Index alternative) - here using a custom divergence condition vps = ta.rsi(close, vps_length) // Plot VPS on the chart plot(vps, title="VPS", color=color.blue, linewidth=2) hline(vps_overbought, "Overbought", color=color.red, linewidth=1) hline(vps_oversold, "Oversold", color=color.green, linewidth=1) // Define Buy and Sell Conditions based on Overbought/Oversold VPS vps_buy_condition = vps < vps_oversold // Buy signal when VPS is oversold vps_sell_condition = vps > vps_overbought // Sell signal when VPS is overbought // Define Bullish and Bearish Divergence conditions bullish_divergence = (low[1] < low[2] and vps[1] > vps[2] and low < low[1] and vps > vps[1]) bearish_divergence = (high[1] > high[2] and vps[1] < vps[2] and high > high[1] and vps < vps[1]) // Combine Buy and Sell signals: // Buy when VPS is oversold or Bullish Divergence occurs vps_buy_condition_final = vps_buy_condition or bullish_divergence // Sell when VPS is overbought or Bearish Divergence occurs vps_sell_condition_final = vps_sell_condition or bearish_divergence // Plot Buy and Sell Signals plotshape(series=vps_buy_condition_final, title="VPS Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, text="BUY") plotshape(series=vps_sell_condition_final, title="VPS Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, text="SELL") // VPS Divergence Highlight bgcolor(bullish_divergence ? color.new(color.green, 90) : na) // Highlight background for Bullish Divergence bgcolor(bearish_divergence ? color.new(color.red, 90) : na) // Highlight background for Bearish Divergence // Strategy: Buy and Sell with target if vps_buy_condition_final strategy.entry("Buy", strategy.long) if vps_sell_condition_final strategy.entry("Sell", strategy.short) // Capital settings for the strategy (for backtesting purposes) capital_per_trade = input.float(1000, title="Capital per Trade (INR)", minval=1) buy_target_inr = 1500 // Profit target for Buy in INR sell_target_inr = 1000 // Profit target for Sell in INR trade_value = close * (capital_per_trade / close) // Value of one contract at current price // Profit threshold calculation buy_profit_target = buy_target_inr / trade_value // Profit in price movement for Buy sell_profit_target = sell_target_inr / trade_value // Profit in price movement for Sell // Exit based on profit targets if strategy.position_size > 0 profit_inr = (close - strategy.position_avg_price) * strategy.position_size if profit_inr >= buy_target_inr strategy.close("Buy", comment="Profit Target Reached") if strategy.position_size < 0 profit_inr = (strategy.position_avg_price - close) * -strategy.position_size if profit_inr >= sell_target_inr strategy.close("Sell", comment="Profit Target Reached") // --- WoW Trends + VPS (Vijay Prasad Strategy) Logic --- Periods = input.int(title="ATR Period", defval=10) src = input.source(close, title="Source") Multiplier = input.float(title="ATR Multiplier", step=0.1, defval=1.7) changeATR = input.bool(title="Change ATR Calculation Method ?", defval=true) showsignals = input.bool(title="Show Buy/Sell Signals ?", defval=true) // --- ATR Calculation --- atr2 = ta.sma(ta.tr, Periods) atr = changeATR ? ta.atr(Periods) : atr2 up = src - (Multiplier * atr) up1 = na(up[1]) ? up : up[1] up := close[1] > up1 ? math.max(up, up1) : up dn = src + (Multiplier * atr) dn1 = na(dn[1]) ? dn : dn[1] dn := close[1] < dn1 ? math.min(dn, dn1) : dn // --- WoW Trends Logic --- var trend = 1 trend := na(trend[1]) ? 1 : trend trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend // --- VPS Logic (Vijay Prasad Strategy) --- vpsVolatilityCondition = (high - low) > (1.5 * ta.sma(ta.tr, 20)) // VPS condition based on volatility vpsTrendCondition = trend == 1 // VPS condition to check if trend is up vpsSignal = vpsVolatilityCondition and vpsTrendCondition // Combine both VPS conditions // --- Buy/Sell Signal Logic --- buySignal = trend == 1 and trend[1] == -1 // Signal to Buy (when trend switches to up) sellSignal = trend == -1 and trend[1] == 1 // Signal to Sell (when trend switches to down) // --- Combined Buy/Sell Signal Logic (WoW Trends + VPS) --- combinedBuySignal = buySignal and vpsSignal combinedSellSignal = sellSignal and vpsSignal // --- Plot WoW Trends Lines using plot() --- plot(trend == 1 ? up : na, title="Up Trend", color=color.green, linewidth=2) plot(trend == -1 ? dn : na, title="Down Trend", color=color.red, linewidth=2) // --- Plot VPS Signals --- plotshape(vpsSignal and showsignals, title="VPS Signal", text="VPS", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.blue, textcolor=color.white) // --- Plot Combined Buy/Sell Signals --- plotshape(combinedBuySignal and showsignals, title="Combined Buy Signal", text="BUY", location=location.belowbar, style=shape.labelup, size=size.small, color=color.green, textcolor=color.white) plotshape(combinedSellSignal and showsignals, title="Combined Sell Signal", text="SELL", location=location.abovebar, style=shape.labeldown, size=size.small, color=color.red, textcolor=color.white) // --- Strategy Entries --- if (combinedBuySignal) strategy.entry("BUY", strategy.long) if (combinedSellSignal) strategy.entry("SELL", strategy.short) // --- Highlight Bars for Buy/Sell Signals --- barcolor(combinedBuySignal ? color.green : na, offset=-1) barcolor(combinedSellSignal ? color.red : na, offset=-1)