SMA ক্রসওভার কৌশল


সৃষ্টির তারিখ: 2023-11-08 11:36:51 অবশেষে সংশোধন করুন: 2023-11-08 11:36:51
অনুলিপি: 1 ক্লিকের সংখ্যা: 646
1
ফোকাস
1617
অনুসারী

SMA ক্রসওভার কৌশল

ওভারভিউ

এই কৌশলটি দ্রুত চলমান গড় এবং ধীর চলমান গড়ের ক্রস নীতির উপর ভিত্তি করে একটি লেনদেনের সংকেত উত্পন্ন করে। যখন দ্রুত চলমান গড় নীচে থেকে ধীর চলমান গড় অতিক্রম করে, তখন একটি কেনার সংকেত উত্পন্ন হয়; যখন দ্রুত চলমান গড় উপরে থেকে নীচে ধীর চলমান গড় অতিক্রম করে, তখন একটি বিক্রয় সংকেত উত্পন্ন হয়।

মূলনীতি

এই কৌশলটি দ্রুত চলমান গড় এবং ধীর চলমান গড়ের জন্য sma ফাংশন ব্যবহার করে। fast_SMA হল দ্রুত চলমান গড়, যা fast_SMA_input; slow_SMA হল ধীর চলমান গড়, যা slow_SMA_input।

কৌশলটি ক্রস এবং ক্রসউন্ডার ফাংশনগুলি ব্যবহার করে দ্রুত চলমান গড় এবং ধীর চলমান গড়ের ক্রস নির্ধারণ করে। যখন দ্রুত চলমান গড়ের উপরে ধীর চলমান গড় অতিক্রম করে, তখন LONG পরিবর্তনশীলটি সত্য হয়, একটি কেনার সংকেত উত্পন্ন করে; যখন দ্রুত চলমান গড়ের নীচে ধীর চলমান গড় অতিক্রম করে, তখন SHORT পরিবর্তনশীলটি সত্য হয়, একটি বিক্রয় সংকেত উত্পন্ন করে।

সামর্থ্য বিশ্লেষণ

এই কৌশলটির সুবিধাগুলো হলঃ

  1. এই কৌশলটি সহজ, সহজে বোঝা যায় এবং বাস্তবায়িত হয়।
  2. কাস্টমাইজড মুভিং এভারেজ পিরিয়ড, যা বিভিন্ন মার্কেটের জন্য প্রযোজ্য।
  3. মার্কেটের কিছু অংশে গোলমাল ফিল্টার করা যায়, যার ফলে আরো নির্ভরযোগ্য ট্রেডিং সিগন্যাল পাওয়া যায়।
  4. ট্রেন্ডের সূচনা এবং বিপর্যয়কে একসাথে ধরা যায়।

ঝুঁকি বিশ্লেষণ

এই কৌশলটি নিম্নলিখিত ঝুঁকিগুলিও বহন করেঃ

  1. যদি এটি সঠিকভাবে সেট না করা হয়, তাহলে এটি অনেক বেশি ট্রেডিং সিগন্যাল তৈরি করতে পারে, যার ফলে ট্রেডিং ঘন ঘন হয়।
  2. এদিকে, অন্যদিকে, অন্যদিকে, অন্যদিকে, অন্যদিকে।
  3. এই প্রবণতা কতদিন ধরে চলবে তা নির্ধারণ করতে না পারলে, এটি খুব তাড়াতাড়ি পাল্টে যেতে পারে।

ঝুঁকি নিয়ন্ত্রণের উপায়ঃ

  1. চলমান গড়ের প্যারামিটারগুলি যুক্তিসঙ্গতভাবে সেট করুন, ফিল্টারিং প্রভাব এবং সংবেদনশীলতার মধ্যে ভারসাম্য বজায় রাখুন
  2. প্রবণতা সূচক ফিল্টার সহ অকার্যকর সংকেত।
  3. স্টপ লস সেট করুন এবং একক ক্ষতি নিয়ন্ত্রণ করুন।

অপ্টিমাইজেশান দিক

এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে অপ্টিমাইজ করা যায়ঃ

  1. চলমান গড়ের ব্রেকিংয়ের সময় ট্র্যাফিক বা অস্থিরতার সূচকগুলি পরীক্ষা করার জন্য ফিল্টারিং শর্তগুলি যুক্ত করুন, যাতে মিথ্যা ব্রেকিং এড়ানো যায়।
  2. প্রবণতা নির্দেশকগুলির সাথে মিলিত হয়ে, প্রবণতার দিকনির্দেশ এবং শক্তি সনাক্ত করুন।
  3. মেশিন লার্নিং মডেল যোগ করা হয়েছে, যা স্বয়ংক্রিয়ভাবে চলমান গড় প্যারামিটারগুলিকে অপ্টিমাইজ করে।
  4. প্রতিরোধের স্তর, ব্রিনের বেন্ড ইত্যাদির মতো প্রযুক্তিগত সূচকগুলির সাথে একত্রে ট্রেডিং অঞ্চলগুলি ম্যাপ করা, প্রবেশের যথার্থতা বাড়িয়ে তোলে।

সারসংক্ষেপ

এই কৌশলটি সরল ও কার্যকরভাবে ট্রেডিং সংকেত উত্পন্ন করার জন্য চলমান গড়ের সুবিধাগুলি ব্যবহার করে। যদিও কিছু ঝুঁকি রয়েছে, তবে প্যারামিটার অপ্টিমাইজেশন, ফিল্টারিং শর্তাদি যুক্ত করা ইত্যাদির মাধ্যমে উন্নতি করা যেতে পারে। চলমান গড় ক্রস কৌশলটি আরও গবেষণা এবং প্রয়োগের জন্য উপযুক্ত।

কৌশল সোর্স কোড
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-13 00:00:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@author Jacques Grobler
//
//                  SIMPLE CROSS OVER BOT
//                  =====================
//
// This is a simple example of how to set up a strategy to go long or short
// If you make any modifications or have any suggestions, let me know
// When using this script, every section marked back testing should be 
// uncommented in order to use for back testing, same goes for using the script portion

///////////////////////////////////////////////////////////////////////////////////////
//// INTRO
//// -----
// BACKTESTING
//@version=4
strategy(title="SimpleCrossOver_Bot_V1_Backtester", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, pyramiding=0, commission_type=strategy.commission.percent, commission_value=0.1)

// SIGNALS
//study(title="SimpleCrossOver_Bot_V1_Signals", overlay = true)

///////////////////////////////////////////////////////////////////////////////////////
//// INPUTS
//// ------
// BACKTESTING
dateSart_Year = input(2018, title="Start Year", minval=2000)
dateSart_Month = input(1, title="Start Month", minval=1, maxval=12)
dateSart_Day = input(1, title="Start Day", minval=1, maxval=31)
dateEnd_Year = input(2019, title="End Year", minval=2000)
dateEnd_Month = input(1, title="End Month", minval=1, maxval=12)
dateEnd_Day = input(1, title="End Day", minval=1, maxval=31)

// BACKTESTING AND SIGNALS
fast_SMA_input = input(7, title="SMA Fast")
slow_SMA_input = input(25, title="SMA Slow")

///////////////////////////////////////////////////////////////////////////////////////
//// INDICATORS
//// ----------
fast_SMA = sma(close, fast_SMA_input)
slow_SMA = sma(close, slow_SMA_input)

///////////////////////////////////////////////////////////////////////////////////////
//// STRATEGY
//// --------
LONG = cross(fast_SMA, slow_SMA) and fast_SMA > slow_SMA
stratLONG() => crossover(fast_SMA, slow_SMA)
SHORT = cross(fast_SMA, slow_SMA) and fast_SMA < slow_SMA
stratSHORT() => crossunder(fast_SMA, slow_SMA)

///////////////////////////////////////////////////////////////////////////////////////
//// TRIGGERS
//// --------
// BACKTESTING
testPeriodStart = timestamp(dateSart_Year, dateSart_Month, dateSart_Day, 0, 0)
testPeriodStop = timestamp(dateEnd_Year, dateEnd_Month, dateEnd_Day, 0, 0)
timecondition = true

strategy.entry(id="LONG", long = true, when=timecondition and stratLONG())
strategy.entry(id="SHORT", long = false, when=timecondition and stratSHORT())

// SIGNALS
//alertcondition(LONG, title="LONG")
//alertcondition(SHORT, title="SHORT")

///////////////////////////////////////////////////////////////////////////////////////
//// PLOTS
//// -----
// BACKTESTING AND SIGNALS
plot(fast_SMA, color=green, linewidth=1)
plot(slow_SMA, color=yellow, linewidth=1)
plotshape(LONG, title="LONG", style=shape.triangleup, text="LONG", location=location.belowbar, size=size.small, color=green)
plotshape(SHORT, title="SHORT", style=shape.triangledown, text="SHORT", location=location.abovebar, size=size.small, color=red)