এই কৌশলটি STOCH সূচকের উপর ভিত্তি করে একটি সহজ অটো ট্রেডিং সিস্টেম ডিজাইন করে। এটি ফরেক্স, স্টক সূচক, পণ্যগুলির জন্য উপযুক্ত এবং স্টক এবং ক্রিপ্টো বাজারগুলিতে প্রসারিত করা যেতে পারে।
এই কৌশলটি স্টোক সূচককে পিভট পয়েন্টগুলির সাথে একত্রিত করে স্টপ লস পজিশনগুলি সেট করতে, প্রবণতা অনুসরণ করে ওভারকপ এবং ওভারসোল্ড স্ট্যাটাসগুলি সনাক্ত করে। স্টোক সূচকটি ওভারকপ বা ওভারসোল্ড সংকেত দেখলে এটি দীর্ঘ বা সংক্ষিপ্ত হয়। ঝুঁকিগুলি কার্যকরভাবে নিয়ন্ত্রণ করার জন্য দিনের পিভট পয়েন্টগুলির কাছে স্টপ লস পয়েন্টগুলি সেট করা হয়। আংশিক লাভের পয়েন্টগুলি নির্দিষ্ট লাভের স্তরের পরে আংশিক অবস্থানগুলি বন্ধ করতে সেট করা হয়।
এই কৌশলটি দীর্ঘ এবং সংক্ষিপ্ত সংকেত তৈরি করতে স্টোচ সূচকের %K এবং %D লাইনের ক্রসিং ব্যবহার করে। বিশেষত, যখন %K লাইন %D লাইনের উপরে অতিক্রম করে, তখন এটি দীর্ঘ হবে। যখন %K লাইন %D লাইনের নীচে অতিক্রম করে, তখন এটি সংক্ষিপ্ত হবে। এটি অতিরিক্ত ক্রয় এবং oversold স্থিতিগুলি ক্যাপচার করে।
ঝুঁকি নিয়ন্ত্রণের জন্য, দীর্ঘ স্টপ লস পয়েন্টটি দৈনিক সর্বনিম্ন পিভোট পয়েন্টের কাছাকাছি এবং সংক্ষিপ্ত স্টপ লস পয়েন্টটি দৈনিক সর্বোচ্চ পিভোট পয়েন্টের কাছাকাছি সেট করা হয়। এটি কার্যকরভাবে ঝুঁকিগুলি লক করে।
আংশিক লাভের জন্য, এটি অবস্থান খোলার পরে একটি নির্দিষ্ট মুনাফা স্তরের পরে 50% অবস্থান বন্ধ করে দেয়। এটি মূলধন ব্যবহারের দক্ষতা অনুকূল করে তোলে।
সংক্ষেপে, এই কৌশলটি অতিরিক্ত ক্রয় এবং অতিরিক্ত বিক্রয় পয়েন্টগুলি যথাযথভাবে ক্যাপচার করে; স্টপ লস ব্যবহার করে ঝুঁকিগুলি নিয়ন্ত্রণ করে; এবং মূলধন ব্যবহারের দক্ষতা অনুকূল করে তোলে। এটি অর্গানিকভাবে ক্যাপচার, কন্ট্রোল এবং অপ্টিমাইজকে একত্রিত করে।
স্টোচ সূচক ব্যবহার করে কার্যকরভাবে ওভারকুপ এবং ওভারসোল্ডের অবস্থা ধরা যায়। পিভট পয়েন্টগুলির সাহায্যে এটি ঝুঁকিগুলিকে ব্যাপকভাবে নিয়ন্ত্রণ করে।
আংশিক মুনাফা গ্রহণ প্রক্রিয়া মূলধন ব্যবহারের দক্ষতা অনুকূল করে তোলে। আংশিক বন্ধ আরও লাভের জন্য জায়গা বজায় রেখে কিছু মুনাফা নিশ্চিত করে।
কাস্টমাইজযোগ্য পরামিতিগুলি বাজারের অবস্থার উপর ভিত্তি করে এবং ঝুঁকি পছন্দ অনুযায়ী নমনীয়তা দেয়।
সহজ এবং পরিষ্কার যুক্তি, সহজেই বুঝতে এবং সমস্ত ব্যবসায়ীদের জন্য মাস্টার। পরিষ্কার কোড পরিবর্তন এবং রক্ষণাবেক্ষণ সহজতর।
ট্রেন্ড অনুসরণকারী কৌশল হিসাবে, এটি রেঞ্জ-বান্ধব বাজারে আটকে থাকতে পারে এবং লাভ করতে ব্যর্থ হতে পারে।
STOCH ভুল সংকেত তৈরি করতে পারে, অপ্রয়োজনীয় ট্রেডিংয়ের কারণ হতে পারে। অপ্রয়োজনীয় ট্রেডিং এড়াতে সঠিক সংকেত ফিল্টারিং প্রয়োজন।
স্টপ লস পয়েন্টের কাছাকাছি ব্রেকআউট পরে খুব কাছাকাছি হতে পারে।
সময়ের মতো কিছু পরামিতি বিভিন্ন বাজারের জন্য সামঞ্জস্য করতে পারে, অন্যথায় এটি কৌশল কার্যকারিতা প্রভাবিত করে।
ব্যাকটেস্ট শুধুমাত্র ঐতিহাসিক তথ্যের উপর নির্ভর করে, ভবিষ্যতের পারফরম্যান্সের নিশ্চয়তা দিতে পারে না।
স্বয়ংক্রিয় ট্রেডিং সিস্টেমগুলির ট্রেড এক্সিকিউশন সমস্যা এড়াতে স্থিতিশীল সংযোগ প্রয়োজন।
স্পষ্ট প্রবণতা ছাড়া ট্রেডিং এড়ানোর জন্য প্রবণতা ফিল্টার যুক্ত করুন। যেমন প্রবণতা দিক নির্ধারণের জন্য এমএ ব্যবহার করা।
ভলিউম বিশ্লেষণ যোগ করুন মিথ্যা ব্রেকআউট সনাক্ত করতে এবং ফাঁদ এড়াতে। উদাহরণস্বরূপ, উত্থান / হ্রাস ভলিউম।
পারফরম্যান্স অপ্টিমাইজ করার জন্য বিভিন্ন পণ্য এবং সময়সীমার উপর ভিত্তি করে স্টোচ ইনপুটগুলির মতো পরামিতিগুলি সামঞ্জস্য করুন।
মেশিন লার্নিং অ্যালগরিদমগুলি বিবেচনা করুন বড় ডেটা ব্যবহার করে মডেলগুলি প্রশিক্ষণ দিতে এবং স্বয়ংক্রিয়ভাবে প্যারামিটারগুলি অনুকূল করতে।
ঝুঁকি নিয়ন্ত্রণের জন্য লাভের অনুপাত নির্ধারণ করুন এবং বিপুল ক্ষতিগ্রস্ত ট্রেড এড়ান।
আরও ফিল্টার যোগ করুন যেমন ট্রেডিং শর্ত, মৌলিক বিষয়গুলি জয়ের হার উন্নত করতে।
এই কৌশলটি ওভারবয় / ওভারসোল্ড পয়েন্টগুলি সনাক্ত করতে স্টোচ সূচকের উপর ভিত্তি করে একটি সহজ এবং স্বজ্ঞাত প্রবণতা অনুসরণ পদ্ধতি গ্রহণ করে। ঝুঁকি নিয়ন্ত্রণ করতে পিআইভিওটি স্টপ লস এবং মূলধন দক্ষতা অনুকূল করতে আংশিক লাভের সাথে। নকশাটি ক্যাপচার, নিয়ন্ত্রণ এবং অনুকূলিতকরণকে কভার করে। যুক্তিটি সহজ এবং কাস্টমাইজযোগ্য। তবে এর কিছু ঝুঁকিও রয়েছে এবং আরও অনুকূলিত করা যেতে পারে। লাইভ ট্রেডিংয়ের অবিচ্ছিন্ন পরীক্ষা এবং উন্নতি স্থিতিশীল লাভজনকতার জন্য গুরুত্বপূর্ণ।
/*backtest start: 2022-09-21 00:00:00 end: 2023-09-27 00:00:00 period: 1d basePeriod: 1h 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/ // © Peter_O //@version=4 // strategy(title="TradingView Alerts to MT4 MT5 - Forex, indices, commodities, stocks, crypto", commission_type=strategy.commission.cash_per_contract, commission_value=0.00003, overlay=false, default_qty_value=20000, initial_capital=1000) // // This script was created for educational purposes only. // It is showing how to use Alerts-Straight-From-Strategies and // dynamic variables in TradingView alerts. // And how to auto-execute them in Forex, indices, commodities markets // // (This method will also work with stocks and crypto - anything your // broker is offering via their MT4/MT5 platform). TakeProfitLevel=input(400) TakePartialProfitLevel=input(150) // **** Entries logic **** { periodK = input(13, title="K", minval=1) periodD = input(3, title="D", minval=1) smoothK = input(4, title="Smooth", minval=1) k = sma(stoch(close, high, low, periodK), smoothK) d = sma(k, periodD) plot(k, title="%K", color=color.blue) plot(d, title="%D", color=color.orange) h0 = hline(80) h1 = hline(20) fill(h0, h1, color=color.purple, transp=75) GoLong=crossover(k,d) and k<80 and year>2009 GoShort=crossunder(k,d) and k>20 and year>2009 AlertTest=open>close or open<close or open==close // } End of entries logic // **** Pivot-points and stop-loss logic **** { piv_high = pivothigh(high,1,1) piv_low = pivotlow(low,1,1) var float stoploss_long=low var float stoploss_short=high pl=valuewhen(piv_low,piv_low,0) ph=valuewhen(piv_high,piv_high,0) if GoLong stoploss_long := low<pl ? low : pl if GoShort stoploss_short := high>ph ? high : ph // } End of Pivot-points and stop-loss logic // **** Trade counter and partial closing mechanism **** { var int trade_id=0 if GoLong or GoShort trade_id:=trade_id+1 TakePartialProfitLong = barssince(GoLong)<barssince(GoShort) and crossover(high,(valuewhen(GoLong,close,0)+TakePartialProfitLevel*syminfo.mintick)) TakePartialProfitShort = barssince(GoLong)>barssince(GoShort) and crossunder(low,(valuewhen(GoShort,close,0)-TakePartialProfitLevel*syminfo.mintick)) // } End of Trade counter and partial closing mechanism strategy.entry("Long", strategy.long, when=GoLong) strategy.exit("XPartLong", from_entry="Long", qty_percent=50, profit=TakePartialProfitLevel) strategy.exit("XLong", from_entry="Long", stop=stoploss_long, profit=TakeProfitLevel) strategy.entry("Short", strategy.short, when=GoShort) strategy.exit("XPartShort", from_entry="Short", qty_percent=50, profit=TakePartialProfitLevel) strategy.exit("XShort", from_entry="Short", stop=stoploss_short, profit=TakeProfitLevel) if GoLong alertsyntax_golong='long slprice=' + tostring(stoploss_long) + ' tradeid=' + tostring(trade_id) + ' tp=' + tostring(TakeProfitLevel) alert(message=alertsyntax_golong, freq=alert.freq_once_per_bar_close) if GoShort alertsyntax_goshort='short slprice=' + tostring(stoploss_short) + ' tradeid=' + tostring(trade_id) + ' tp=' + tostring(TakeProfitLevel) alert(message=alertsyntax_goshort, freq=alert.freq_once_per_bar_close) if TakePartialProfitLong alertsyntax_closepartlong='closepart tradeid=' + tostring(trade_id) + ' part=0.5' alert(message=alertsyntax_closepartlong, freq=alert.freq_once_per_bar_close) if TakePartialProfitShort alertsyntax_closepartshort='closepart tradeid=' + tostring(trade_id) + ' part=0.5' alert(message=alertsyntax_closepartshort, freq=alert.freq_once_per_bar_close)