চপিনিস কে-লাইন ব্রেকথ্রো কৌশল একটি পরিমাণগত ট্রেডিং কৌশল যা স্টক ট্রেডিংয়ের জন্য এন্ট্রি এবং প্রস্থান নির্ধারণের জন্য কে-লাইন প্যাটার্ন এবং গতির সূচক ব্যবহার করে। এই কৌশলটি মূল্যের প্রবণতা এবং গতির সংকেতগুলি সনাক্ত করতে একাধিক প্রযুক্তিগত সূচককে একত্রিত করে, ব্রেকথ্রো পয়েন্টে অবস্থান গ্রহণ করে এবং স্টপ লস সেট করে এবং লাভ করে ট্রেডিং ঝুঁকিগুলি কার্যকরভাবে নিয়ন্ত্রণ করতে।
চপিনিস কে-লাইন ব্রেকথ্রু স্ট্র্যাটেজির মূল ধারণাগুলি হল:
কমোডিটি চ্যানেল ইনডেক্স (সিসিআই) ব্যবহার করে নির্ধারণ করা হয় যে দামগুলি ওভারকুপেড বা ওভারসোল্ড জোনে রয়েছে কিনা। সিসিআই 100 এর উপরে অতিক্রম করা একটি ওভারকুপেড সংকেত হিসাবে বিবেচিত হয়, যখন -100 এর নীচে অতিক্রম করা একটি ওভারসোল্ড সংকেত।
ভাঙ্গন সংকেত সনাক্ত করার জন্য কে-লাইন প্যাটার্ন সনাক্তকরণ। খোলা তুলনায় উচ্চতর একটি বন্ধের সাথে একটি লাল কে-লাইন একটি আপট্রেন্ড নির্দেশ করে, যখন খোলা তুলনায় কম বন্ধ করা একটি সবুজ কে-লাইন একটি ডাউনট্রেন্ড নির্দেশ করে।
ট্রেডিং ভলিউমকে অন্তর্ভুক্ত করে শুধুমাত্র যখন ভলিউম বাড়ছে তখন কিনুন এবং বিক্রয় সংকেত বিবেচনা করুন।
যখন একটি আপট্রেন্ড চিহ্নিত করা হয় এবং CCI oversold দেখায় তখন লং পজিশন নেওয়া। যখন একটি ডাউনট্রেন্ড চিহ্নিত করা হয় এবং CCI oversold দেখায় তখন শর্ট পজিশন নেওয়া।
ঝুঁকি নিয়ন্ত্রণ এবং মুনাফা লক করার জন্য স্টপ লস এবং লাভ পয়েন্ট সেট করুন।
বিশেষত, কৌশলটি ওভারকুপ / ওভারসোল্ড বিশ্লেষণের জন্য সিসিআই, ট্রেন্ডের দিকনির্দেশের জন্য কে-লাইন প্যাটার্ন এবং গতির জন্য ভলিউম ব্যবহার করে। এটি মানদণ্ড পূরণ হলে দীর্ঘ বা স্বল্প অবস্থানে প্রবেশ করে। ঝুঁকি এবং লাভ পরিচালনা করতে স্টপ লস এবং লাভ গ্রহণ ব্যবহৃত হয়।
চপিনিস কে-লাইন ব্রুকথ্রো স্ট্র্যাটেজি নিম্নলিখিত সুবিধাগুলি রয়েছেঃ
একাধিক সূচককে একত্রিত করা ট্রেডিং সংকেতগুলির নির্ভরযোগ্যতা উন্নত করে। সিসিআই ট্রেডিং জোনগুলি চিহ্নিত করে, কে-লাইন প্রবণতার দিকনির্দেশ নির্ধারণ করে এবং ভলিউম বাজারের গতিবিধি প্রতিফলিত করে।
কে-লাইন প্যাটার্নগুলি ব্যবহার করে প্রবণতা বিপরীতকরণগুলি সঠিকভাবে সনাক্ত করতে সহায়তা করে। উদাহরণস্বরূপ, সিসিআই ওভারসোল্ডের সাথে লাল কে-লাইন কেনার সুযোগ উপস্থাপন করে।
স্টপ লস এন্ড টেক প্রফিট কার্যকরভাবে ঝুঁকি নিয়ন্ত্রণ করে এবং মুনাফায় লক করে।
শুধুমাত্র ভলিউম বাড়ার সংকেত বিবেচনা করে মিথ্যা সংকেত এড়ানো যায়।
কৌশলগত যুক্তি স্পষ্ট এবং স্টক এবং বাজার পরিবেশে অপ্টিমাইজেশনের জন্য পরামিতিগুলি নমনীয়।
এই কৌশল আরও বেশি সংখ্যক কারণ, মেশিন লার্নিং ইত্যাদির মাধ্যমে আরও উন্নত করা যেতে পারে, যা স্থিতিশীলতা এবং লাভজনকতা বাড়িয়ে তুলবে।
কৌশলটির সম্ভাব্য ঝুঁকিগুলির মধ্যে রয়েছেঃ
সিসিআই সংকেতগুলি বিলম্বিত হতে পারে, যার ফলে অনুকূল প্রবেশের পয়েন্টগুলি মিস করা হয়। উচ্চ সংবেদনশীলতার জন্য সিসিআই পরামিতিগুলি সেট করা যেতে পারে।
কে-লাইন প্যাটার্নের ভুয়া ব্রেকআউটগুলি অপ্রয়োজনীয় ক্ষতির কারণ হতে পারে। নিশ্চিতকরণের জন্য আরও সূচক যুক্ত করা যেতে পারে, অথবা স্টপ লস শতাংশ সামঞ্জস্য করা যেতে পারে।
ভলিউম বৃদ্ধিও ম্যানিপুলেট করা যেতে পারে, তাই ভলিউম-মূল্য বিপরীতে নজর রাখা গুরুত্বপূর্ণ।
স্ট্যাটিক স্টপ লস/টেক প্রফিট প্রবণতা থেকে তাড়াতাড়ি বেরিয়ে আসতে পারে অথবা আরও প্রবণতা মিস করতে পারে। গতিশীল সমন্বয় বিবেচনা করুন।
একটি স্টকের জন্য ফিট করা প্যারামিটারগুলি অন্যদের জন্য উপযুক্ত নাও হতে পারে। নির্দিষ্ট মিটিং প্রয়োজন।
ব্যাকটেস্টের ফলাফলগুলি লাইভ পারফরম্যান্সের প্রতিনিধিত্ব করতে পারে না।
কৌশলটি নিম্নলিখিতগুলির মাধ্যমে উন্নত করা যেতে পারেঃ
দ্রুত সংকেত উৎপাদনের জন্য সিসিআই পরামিতিগুলি অপ্টিমাইজ করা।
সিগন্যালের নির্ভুলতা বাড়াতে এমএসিডি, বোলিংজার ব্যান্ডের মতো আরও সূচক যুক্ত করা।
প্রবেশ/প্রস্থান পয়েন্ট পূর্বাভাস দেওয়ার জন্য ঐতিহাসিক তথ্যের উপর প্রশিক্ষিত মেশিন লার্নিং মডেল ব্যবহার করা।
বাজারের অস্থিরতার উপর ভিত্তি করে গতিশীল স্টপ লস এবং লাভ গ্রহণ।
ভলিউম-প্রাইস ডিভার্জেন্স সনাক্ত করার জন্য ভলিউম স্কেল লজিক উন্নত করা।
স্থিতিশীলতা বাড়াতে বিভিন্ন স্টক এবং বাজার ব্যবস্থার জন্য পরামিতিগুলি সামঞ্জস্য করা।
বাজারের বিভিন্ন পর্যায়ে আরও ভাল পারফরম্যান্সের জন্য প্রবণতা অনুসরণকারী প্রক্রিয়াগুলি অন্তর্ভুক্ত করা।
আরো নমনীয়তা এবং সম্প্রসারণযোগ্যতার জন্য কৌশলটি মডুলারাইজ করা।
চপিনিস কে-লাইন ব্রেকথ্রু কৌশল একটি তুলনামূলকভাবে সরল স্বল্পমেয়াদী ট্রেডিং কৌশল। এটি স্টপ লস এবং লাভ নেওয়ার মাধ্যমে স্পষ্ট যুক্তি এবং ঝুঁকি নিয়ন্ত্রণের জন্য সাধারণ প্রযুক্তিগত সূচকগুলিকে একত্রিত করে। কৌশলটি স্বল্পমেয়াদী বিপরীতমুখী এবং মাঝারি মেয়াদী প্রবণতা ক্যাপচার করার প্রয়োজনের ভিত্তিতে নমনীয়ভাবে অনুকূলিত করা যেতে পারে। তবে সূচক বিলম্ব এবং মিথ্যা ব্রেকআউট সহ ঝুঁকিগুলি পরিচালনা করা উচিত। শক্তিশালী অপ্টিমাইজেশন এবং ঝুঁকি পরিচালনার সাথে এটি একটি মৌলিক পরিমাণগত ট্রেডিং কৌশল গঠন করতে পারে।
/*backtest start: 2023-09-06 00:00:00 end: 2023-10-06 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © vikris //@version=4 strategy("[VJ]War Machine PAT Intra", overlay=true, calc_on_every_tick = false) // ********** Strategy inputs - Start ********** // Used for intraday handling // Session value should be from market start to the time you want to square-off // your intraday strategy // Important: The end time should be at least 2 minutes before the intraday // square-off time set by your broker var i_marketSession = input(title="Market session", type=input.session, defval="0915-1455", confirm=true) // Make inputs that set the take profit % (optional) longProfitPerc = input(title="Long Take Profit (%)", type=input.float, minval=0.0, step=0.1, defval=5.0) * 0.01 shortProfitPerc = input(title="Short Take Profit (%)", type=input.float, minval=0.0, step=0.1, defval=5.0) * 0.01 // Set stop loss level with input options (optional) longLossPerc = input(title="Long Stop Loss (%)", type=input.float, minval=0.0, step=0.1, defval=5.0) * 0.01 shortLossPerc = input(title="Short Stop Loss (%)", type=input.float, minval=0.0, step=0.1, defval=5.0) * 0.01 trendFactor = input(title="Trend Factor(Lower means trending)", type=input.integer, minval=1, step=1, defval=50) oversold = input(title="Oversold", type=input.integer, minval=1, step=1, defval=25) overbought = input(title="Overbought", type=input.integer, minval=1, step=1, defval=75) // ********** Strategy inputs - End ********** // ********** Supporting functions - Start ********** // A function to check whether the bar or period is in intraday session barInSession(sess) => time(timeframe.period, sess) != 0 // Figure out take profit price longExitPrice = strategy.position_avg_price * (1 + longProfitPerc) shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc) // Determine stop loss price longStopPrice = strategy.position_avg_price * (1 - longLossPerc) shortStopPrice = strategy.position_avg_price * (1 + shortLossPerc) // ********** Supporting functions - End ********** // ********** Strategy - Start ********** // See if intraday session is active bool intradaySession = barInSession(i_marketSession) // Trade only if intraday session is active //=================Strategy logic goes in here=========================== //Vol Confirmation vol = volume > volume[1] //Engulfing candle confirm bullishEC = close > open[1] and close[1] < open[1] bearishEC = close < open[1] and close[1] > open[1] //Candles colors greenCandle = (close > open) redCandle = (close < open) length = input(title="Length", type=input.integer, defval=14, minval=1, maxval=2000) src = hlc3 upper = sum(volume * (change(src) <= 0 ? 0 : src), length) lower = sum(volume * (change(src) >= 0 ? 0 : src), length) _rsi(upper, lower) => 100.0 - (100.0 / (1.0 + upper / lower)) mf = _rsi(upper, lower) ci = 100 * log10(sum(atr(1), length) / (highest(length) - lowest(length))) / log10(length) //tradeSignal = ((rsiOS or rsiOS[1]) and bullishEC) or ((rsiOB or rsiOB[1]) and bearishEC) //Final Long/Short Condition longCondition = redCandle and mf < oversold and ci <trendFactor and vol shortCondition = greenCandle and mf >overbought and ci <trendFactor and vol //Long Strategy - buy condition and exits with Take profit and SL if (longCondition and intradaySession) stop_level = longStopPrice profit_level = longExitPrice strategy.entry("My Long Entry Id", strategy.long) strategy.exit("TP/SL", "My Long Entry Id", stop=stop_level, limit=profit_level) //Short Strategy - sell condition and exits with Take profit and SL if (shortCondition and intradaySession) stop_level = shortStopPrice profit_level = shortExitPrice strategy.entry("My Short Entry Id", strategy.short) strategy.exit("TP/SL", "My Short Entry Id", stop=stop_level, limit=profit_level) // Square-off position (when session is over and position is open) squareOff = (not intradaySession) and (strategy.position_size != 0) strategy.close_all(when = squareOff, comment = "Square-off") // ********** Strategy - End **********