পিয়ারিং পিন বার বিপরীত কৌশল হল স্বল্পমেয়াদী মূল্য প্যাটার্নের উপর ভিত্তি করে একটি ট্রেন্ড ট্রেডিং কৌশল। এটি অত্যন্ত উচ্চ মুনাফা অর্জনের জন্য একটি অনন্য ট্রেইলিং স্টপ প্রক্রিয়া ব্যবহার করে।
এই কৌশলটির জন্য প্রবেশ সংকেত হল পিন বার ছিদ্র করা। বিশেষত একটি সংকেত যখন সক্রিয় হয়ঃ
এই মিশ্রণটি বেশিরভাগ শব্দ ফিল্টার করে এবং প্রবেশের নির্ভুলতা বাড়ায়।
কৌশলটি প্রবণতা নির্ধারণের জন্য বিভিন্ন সময়ের তিনটি এমএ ব্যবহার করে। বিশেষত, যখন দ্রুত, মাঝারি এবং ধীর এমএ এক দিকের সাথে সারিবদ্ধ হয়, এটি প্রবণতা হিসাবে সংজ্ঞায়িত করা হয়। অন্যথায় এটি একীকরণ হিসাবে বিবেচিত হয়।
দীর্ঘ এন্ট্রিগুলির জন্য, দ্রুত এমএ > মাঝারি এমএ > ধীর এমএ প্রয়োজন। সংক্ষিপ্ত এন্ট্রিগুলির জন্য, দ্রুত এমএ < মাঝারি এমএ < ধীর এমএ প্রয়োজন।
কৌশলটি একটি অনন্য ট্রেলিং স্টপ লস প্রক্রিয়া ব্যবহার করে। প্রবেশের পরে, ট্রেলিং পয়েন্ট এবং অফসেটের জন্য ব্যবহারকারীর সংজ্ঞায়িত মানগুলির উপর ভিত্তি করে সর্বোত্তম স্টপ লস পয়েন্টগুলি ট্র্যাক করা হয়। এটি ঝুঁকি নিয়ন্ত্রণের সময় ক্যাপচার করা মুনাফা সর্বাধিকীকরণের অনুমতি দেয়।
পার্সিং সংকেতগুলি কেবলমাত্র উচ্চ সম্ভাব্যতার সুযোগের পয়েন্টগুলিতে প্রবেশের অনুমতি দেয়, অত্যধিক গোলমালযুক্ত ব্যবসায়গুলি এড়ানো। প্রবণতা ফিল্টারগুলির সাথে একত্রিত হওয়া আরও বেশিরভাগ প্রতি-প্রবণতা অপারেশনগুলি এড়ায়। এটি কৌশলটির জন্য উচ্চ নির্ভুলতা নিশ্চিত করে।
অনন্য ট্রেইলিং স্টপ এই কৌশলটির সবচেয়ে বড় হাইলাইট। এটি সর্বোচ্চ ক্যাপচার লাভ নিশ্চিত করার সময় প্রতি বাণিজ্য ভিত্তিতে একটি ছোট পরিসরের মধ্যে স্টপ লসকে সঠিকভাবে নিয়ন্ত্রণ করে।
সিম ফলাফলগুলি এই প্রক্রিয়াটি প্রয়োগ করার পরে পাগল মুনাফা দেখায়, একাধিক জোড়ার জন্য 1000% এরও বেশি মোট রিটার্ন এবং প্রাথমিক ঝুঁকির 100 গুণেরও বেশি ট্রেড মুনাফা। মুনাফা নতুন উচ্চতায় অগ্রসর হয়।
প্রায়
এছাড়াও, ২ বছরের পরীক্ষামূলক সময়কাল প্রকৃত ফলাফলকে প্রভাবিত করতে পারে এমন কাঠামোগত বাজার ব্যবস্থার পরিবর্তনগুলি ক্যাপচার করতে পারে না।
অতিরিক্ত সংবেদনশীল ট্রেলিং স্টপ মান অত্যধিক অবাঞ্ছিত স্টপ আউট হতে পারে। হঠাৎ বাজার ইভেন্টগুলি ট্রেলিং স্টপ লস অর্ডারগুলিকে অবৈধ করতে পারে। এগুলি ট্রেলিং স্টপ ব্যবহারের সাথে যুক্ত অন্তর্নিহিত ঝুঁকি।
ট্রেইলিং স্টপ পাগল মুনাফার চাবিকাঠি। এটি উভয় চতুর এবং নির্ভরযোগ্য করতে, অতিরিক্ত সংবেদনশীলতা এড়ানোর জন্য ট্রেইলিং পয়েন্ট শিথিল করার চেষ্টা করুন।
পরীক্ষার সময়সীমা বাড়িয়ে প্যারামিটার স্থিতিশীলতা পরীক্ষা করতেও সহায়তা করে।
বর্তমান এমএ সময়কাল সম্ভবত সর্বোত্তম প্যারামিটার সেট নয়। আরও অপ্টিমাইজেশান আরও ভাল পারফরম্যান্সের জন্য আরও ভাল মান আবিষ্কার করতে পারে।
উদাহরণস্বরূপ, দ্রুত এবং মাঝারি এমএ সময়ের মধ্যে পার্থক্য বাড়ানো বা এমএগুলির মিথস্ক্রিয়া পরিবর্তন করা।
পিয়ারিং পিন বার বিপরীত কৌশল উচ্চ দক্ষতা প্রবেশ এবং চরম মুনাফা গ্রহণের মাধ্যমে বিস্ময়কর ব্যাকটেস্ট ফলাফল অর্জন করেছে। তবে আমাদের অবশ্যই অতিরিক্ত ফিট ঝুঁকিগুলি স্বীকার করতে হবে এবং সেই অনুযায়ী ঝুঁকি নিয়ন্ত্রণের জন্য প্রস্তুত হতে হবে।
সঠিক প্যারামিটার টিউনিং বা অপ্টিমাইজেশান সহ, এই কৌশলটি লাইভ ট্রেডিংয়ে উল্লেখযোগ্য মুনাফা প্রদান করতে সক্ষম হতে পারে, এটি একটি শক্তিশালী ট্রেন্ড অনুসরণকারী সিস্টেম হয়ে উঠতে পারে। এর অনন্য ট্রেলিং স্টপ ধারণাটি মূল্যবান অনুপ্রেরণাও সরবরাহ করে, যা আরও উদ্ভাবনী কৌশলগুলির জন্ম দিতে পারে।
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //Time Frame: H1 strategy("Pin Bar Magic v1", overlay=true) // User Input usr_risk = input(title="Equity Risk (%)",type=input.integer,minval=1,maxval=100,step=1,defval=3,confirm=false) atr_mult = input(title="Stop Loss (x*ATR, Float)",type=input.float,minval=0.1,maxval=100,step=0.1,defval=0.5,confirm=false) slPoints = input(title="Stop Loss Trail Points (Pips)",type=input.integer,minval=1,maxval=1000,step=1,defval=1,confirm=false) slOffset = input(title="Stop Loss Trail Offset (Pips)",type=input.integer,minval=1,maxval=1000,step=1,defval=1,confirm=false) sma_slow = input(title="Slow SMA (Period)",type=input.integer,minval=1,maxval=500,step=1,defval=50,confirm=false) ema_medm = input(title="Medm EMA (Period)",type=input.integer,minval=1,maxval=500,step=1,defval=18,confirm=false) ema_fast = input(title="Fast EMA (Period)",type=input.integer,minval=1,maxval=500,step=1,defval=6,confirm=false) atr_valu = input(title="ATR (Period)",type=input.integer,minval=1,maxval=500,step=1,defval=14,confirm=false) ent_canc = input(title="Cancel Entry After X Bars (Period)",type=input.integer,minval=1,maxval=500,step=1,defval=3,confirm=false) // Create Indicators slowSMA = sma(close, sma_slow) medmEMA = ema(close, ema_medm) fastEMA = ema(close, ema_fast) bullishPinBar = ((close > open) and ((open - low) > 0.66 * (high - low))) or ((close < open) and ((close - low) > 0.66 * (high - low))) bearishPinBar = ((close > open) and ((high - close) > 0.66 * (high - low))) or ((close < open) and ((high - open) > 0.66 * (high - low))) atr = atr(atr_valu) // Specify Trend Conditions fanUpTrend = (fastEMA > medmEMA) and (medmEMA > slowSMA) fanDnTrend = (fastEMA < medmEMA) and (medmEMA < slowSMA) // Specify Piercing Conditions bullPierce = ((low < fastEMA) and (open > fastEMA) and (close > fastEMA)) or ((low < medmEMA) and (open > medmEMA) and (close > medmEMA)) or ((low < slowSMA) and (open > slowSMA) and (close > slowSMA)) bearPierce = ((high > fastEMA) and (open < fastEMA) and (close < fastEMA)) or ((high > medmEMA) and (open < medmEMA) and (close < medmEMA)) or ((high > slowSMA) and (open < slowSMA) and (close < slowSMA)) // Specify Entry Conditions longEntry = fanUpTrend and bullishPinBar and bullPierce shortEntry = fanDnTrend and bearishPinBar and bearPierce // Long Entry Function enterlong() => risk = usr_risk * 0.01 * strategy.equity stopLoss = low[1] - atr[1] * atr_mult entryPrice = high[1] units = risk / (entryPrice - stopLoss) strategy.entry("long", strategy.long, units, stop=entryPrice) strategy.exit("exit long", from_entry="long", trail_points=slPoints, trail_offset=slOffset) // Short Entry Function entershort() => risk = usr_risk * 0.01 * strategy.equity stopLoss = high[1] + atr[1] * atr_mult entryPrice = low[1] units = risk / (stopLoss - entryPrice) strategy.entry("short", strategy.short, units, stop=entryPrice) strategy.exit("exit short", from_entry="short", trail_points=slPoints, trail_offset=slOffset) // Execute Long Entry if (longEntry) enterlong() // Execute Short Entry if (shortEntry) entershort() // Cancel the Entry if Bar Time is Exceeded strategy.cancel("long", barssince(longEntry) > ent_canc) strategy.cancel("short", barssince(shortEntry) > ent_canc) // Force Close During Certain Conditions strategy.close_all(when = hour==16 and dayofweek==dayofweek.friday, comment = "exit all, market-closed") strategy.close_all(when = crossunder(fastEMA, medmEMA), comment = "exit long, re-cross") strategy.close_all(when = crossover(fastEMA, medmEMA), comment = "exit short, re-cross") // Plot Moving Averages to Chart plot(fastEMA, color=color.red) plot(medmEMA, color=color.blue) plot(slowSMA, color=color.green) // Plot Pin Bars to Chart plotshape(bullishPinBar, text='Bull PB', style=shape.labeldown, location=location.abovebar, color=color.green, textcolor=color.white, transp=0) plotshape(bearishPinBar, text='Bear PB', style=shape.labelup, location=location.belowbar, color=color.red, textcolor=color.white, transp=0) // Plot Days of Week plotshape(hour==0 and dayofweek==dayofweek.monday, text='Monday', style=shape.labeldown, location=location.abovebar, color=color.black, textcolor=color.white, transp=0) plotshape(hour==0 and dayofweek==dayofweek.tuesday, text='Tuesday', style=shape.labeldown, location=location.abovebar, color=color.black, textcolor=color.white, transp=0) plotshape(hour==0 and dayofweek==dayofweek.wednesday, text='Wednesday', style=shape.labeldown, location=location.abovebar, color=color.black, textcolor=color.white, transp=0) plotshape(hour==0 and dayofweek==dayofweek.thursday, text='Thursday', style=shape.labeldown, location=location.abovebar, color=color.black, textcolor=color.white, transp=0) plotshape(hour==0 and dayofweek==dayofweek.friday, text='Friday', style=shape.labeldown, location=location.abovebar, color=color.black, textcolor=color.white, transp=0) plotshape(hour==16 and dayofweek==dayofweek.friday, text='Market Closed', style=shape.labeldown, location=location.abovebar, color=color.black, textcolor=color.white, transp=0)