এই কৌশলটি একটি প্রবণতা অনুসরণকারী ট্রেডিং সিস্টেম যা সুপারট্রেন্ড সূচককে কাউফম্যান অ্যাডাপ্টিভ মুভিং এভারেজ (কামা) এর সাথে একত্রিত করে। এটি গতিশীলভাবে বাজারের প্রবণতা পরিবর্তনগুলি সনাক্ত করে, আপট্রেন্ডগুলিতে দীর্ঘ সুযোগগুলি সন্ধান করে এবং ঝুঁকি নিয়ন্ত্রণের জন্য নমনীয় স্টপ-লস প্রক্রিয়াগুলি ব্যবহার করে। মূল ধারণাটি সুপারট্রেন্ড সূচকের প্রবণতা দিকনির্দেশ নির্ধারণের সক্ষমতার উপর নির্ভর করে, যা কামার বাজার অস্থিরতার অভিযোজিত বৈশিষ্ট্যগুলির সাথে মিলিত হয়, আপট্রেন্ড বাজারের প্রবণতাগুলিতে দীর্ঘ অবস্থান স্থাপন করতে।
কৌশলটি একটি দ্বৈত প্রযুক্তিগত সূচক নিশ্চিতকরণ সিস্টেম ব্যবহার করে। প্রথমত, সুপারট্রেন্ড সূচকটি এটিআর এবং কাস্টম সহগগুলি ব্যবহার করে প্রবণতা দিক গণনা করে, যখন সূচক লাইনটি দামের নীচে থাকে তখন একটি আপট্রেন্ড নির্দেশ করে। দ্বিতীয়ত, কামা সূচকটি একটি অভিযোজিত প্রক্রিয়াটির মাধ্যমে চলমান গড় সংবেদনশীলতা সামঞ্জস্য করে, বিভিন্ন বাজারের অবস্থার আরও ভাল সমন্বয় করে। এন্ট্রি সংকেতগুলির জন্য দুটি একযোগে শর্ত প্রয়োজনঃ সুপারট্রেন্ড একটি আপট্রেন্ড এবং কামা লাইনের উপরে দাম নির্দেশ করে। একইভাবে, প্রস্থান সংকেতগুলির দ্বৈত নিশ্চিতকরণের প্রয়োজনঃ সুপারট্রেন্ড ডাউনট্রেন্ডে স্যুইচিং এবং দাম কামা লাইনের নীচে নেমে যাওয়া। এই দ্বৈত নিশ্চিতকরণ প্রক্রিয়াটি কার্যকরভাবে মিথ্যা সংকেতগুলি হ্রাস করে।
এই কৌশলটি সুপারট্রেন্ড এবং কামা প্রযুক্তিগত সূচকগুলিকে একত্রিত করে একটি শক্তিশালী ট্রেডিং সিস্টেম তৈরি করে। এর প্রধান সুবিধা হ'ল অভিযোজনযোগ্যতা এবং ঝুঁকি নিয়ন্ত্রণ ক্ষমতা, দ্বৈত নিশ্চিতকরণের মাধ্যমে উন্নত ট্রেডিং সিগন্যাল নির্ভরযোগ্যতার সাথে। অস্থির বাজারে চ্যালেঞ্জের মুখোমুখি হওয়ার সময়, কৌশলটির সামগ্রিক পারফরম্যান্স উপযুক্ত পরামিতি সেটিং এবং অপ্টিমাইজেশান বাস্তবায়নের মাধ্যমে আরও উন্নত করা যেতে পারে। এটি মাঝারি থেকে দীর্ঘমেয়াদী ট্রেডিং ট্রেডিংয়ের জন্য বিশেষভাবে উপযুক্ত এবং স্পষ্ট প্রবণতা সহ বাজারে ভাল পারফর্ম করে।
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-25 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=6 strategy("Supertrend + KAMA Long Strategy", overlay=true, commission_type=strategy.commission.percent, commission_value=0.1, slippage=3) // User-defined inputs for date range startDate = input(timestamp("2018-01-01 00:00:00"), title="Start Date") endDate = input(timestamp("2069-12-31 23:59:59"), title="End Date") inDateRange = true // Inputs for KAMA and Supertrend kamaLength = input.int(21, title="KAMA Length", minval=1) atrPeriod = input.int(10, title="Supertrend ATR Length", minval=1) factor = input.float(3.0, title="Supertrend Factor", minval=0.01, step=0.01) //------------------------- Kaufman Moving Average Adaptive (KAMA) ------------------------- xPrice = close xvnoise = math.abs(xPrice - xPrice[1]) Length = kamaLength nfastend = 0.666 nslowend = 0.0645 nsignal = math.abs(xPrice - xPrice[Length]) float nnoise = 0.0 for i = 0 to Length - 1 nnoise := nnoise + xvnoise[i] nefratio = nnoise != 0.0 ? nsignal / nnoise : 0.0 nsmooth = math.pow(nefratio * (nfastend - nslowend) + nslowend, 2) var float nAMA = na nAMA := nz(nAMA[1]) + nsmooth * (xPrice - nz(nAMA[1])) plot(nAMA, color=color.blue, linewidth=2, title="Kaufman KAMA") //------------------------- Supertrend Calculation ------------------------- [stValue, dirValue] = ta.supertrend(factor, atrPeriod) upTrend = dirValue < 0 downTrend = dirValue >= 0 plot(dirValue < 0 ? stValue : na, "Up Trend", color=color.green, style=plot.style_linebr) plot(dirValue >= 0 ? stValue : na, "Down Trend", color=color.red, style=plot.style_linebr) //------------------------- Strategy Logic ------------------------- // Entry condition: Supertrend is in uptrend AND price is above KAMA canLong = inDateRange and upTrend and close > nAMA // Exit condition (Take Profit): Supertrend switches to downtrend AND price is below KAMA stopLoss = inDateRange and downTrend and close < nAMA if canLong strategy.entry("Long", strategy.long) label.new(bar_index, low, "BUY", color=color.green, textcolor=color.white, style=label.style_label_down, size=size.normal) if stopLoss strategy.close("Long", comment="Stop Loss") label.new(bar_index, high, "STOP LOSS", color=color.red, textcolor=color.white, style=label.style_label_up, size=size.normal) //------------------------- Alerts ------------------------- alertcondition(canLong, title="Long Entry", message="Supertrend + KAMA Long Signal") alertcondition(stopLoss, title="Stop Loss", message="Supertrend switched to Downtrend and Price below KAMA")