
এই নিবন্ধটি নোরোর তৈরি ট্র্যাকিং মুভিং এভারেজ ফ্লাইওভার কৌশল সম্পর্কে বিশ্লেষণ করে। এই কৌশলটি বন্ধের দামের সরল মুভিং এভারেজের থেকে বিচ্যুতির পরিমাণ গণনা করে বাজার প্রবণতা পরিবর্তনের সময় নির্ধারণ করে এবং নিম্ন বা উচ্চ বিক্রয় অর্জন করে।
এই কৌশলটি প্রথমে 3 দিনের সরল চলমান গড় sma গণনা করে। তারপরে ক্লোজ প্রাইস ক্লোজ এবং sma এর অনুপাত গণনা করে, তারপরে 1 কে বাদ দিয়ে, একটি সূচক ind পায়। যখন ind এর উপরে একটি পূর্বনির্ধারিত প্যারামিটার সীমা অতিক্রম করে, তখন ক্লোজ প্রাইস স্পষ্টতই sma ছাড়িয়ে গেছে, অতিরিক্ত বিবেচনা করুন; যখন ind এর নীচে একটি সীমা অতিক্রম করে, তখন ক্লোজ প্রাইসটি sma এর তুলনায় উল্লেখযোগ্যভাবে কম রয়েছে, খালি বিবেচনা করুন।
কৌশলটি 0-অক্ষ, সীমা-অক্ষ এবং -সীমা-অক্ষের উপরও আঁকা হয়েছে। ind নির্দেশকটি বিভিন্ন অঞ্চলে বিভিন্ন রঙের রঙের সাহায্যে বিচার করে। যখন ind নির্দেশকটি সীমা বা -সীমা অতিক্রম করে, তখন অতিরিক্ত বা খালি সংকেত দেখা যায়।
যখন কৌশলটি একটি ওভার বা ডাউন সিগন্যাল উত্পন্ন করে, তখন এটি প্রথমে বর্তমান দিকের বিপরীত দিকে অবস্থানের পজিশনটি খালি করে, তারপরে এটি ওভার বা ডাউন পজিশন খুলবে। যখন ইন্ড সূচকটি 0 অক্ষের মধ্যে ফিরে আসে, তখন সমস্ত পজিশন খালি করে।
উড়ন্ত নীতি ব্যবহার করে, যখন দামগুলি চলমান গড় থেকে স্পষ্টভাবে দূরে সরে যায়, তখন বিপরীতমুখী অপারেশন করা হয়, এটি প্রবণতা অনুসরণ করার চেয়ে আলাদা, উড়ন্ত কৌশলটি বিপরীত দিকটি ধরার চেষ্টা করে।
নির্দেশক অক্ষ আঁকুন, নির্দেশকের অবস্থান এবং অতিক্রমকে স্বজ্ঞাতভাবে বিচার করুন।
প্লেইন পজিশনের লজিকটি অপ্টিমাইজ করা হয়েছে, বর্তমান পজিশনের প্লেইন হওয়ার পরেই একটি নতুন পজিশন খুলতে হবে, অপ্রয়োজনীয় প্লেইন পজিশন ধরে রাখা এড়াতে হবে।
অপ্রয়োজনীয় রাতারাতি পজিশন এড়াতে ট্রেডিং সময়সীমা সেট করুন।
এটি শুধুমাত্র অতিরিক্ত বা শুধুমাত্র খালি করার জন্য উভয় পক্ষের মাল্টি-স্ক্রিনের জন্য একটি লেনদেনের সুইচ সেট করার অনুমতি দেয়।
মুভিং এভারেজ ট্রেসিং কৌশলটি ধৈর্যশীল পজিশনের জন্য উপযুক্ত কারণ এটি একাধিক ক্ষতিগ্রস্ত লেনদেনের দিকে পরিচালিত করে।
মুভিং এভারেজ একটি বিচারক সূচক হিসাবে নমনীয়তা অভাব এবং সময়মত মূল্য পরিবর্তন প্রতিফলিত করতে পারে না।
ডিফল্ট প্যারামিটার সীমাবদ্ধতা বেশ স্থির, বিভিন্ন জাত এবং বাজারের পরিস্থিতির সাথে সামঞ্জস্যপূর্ণ।
চলমান গড় ট্র্যাকিং প্রবণতা মধ্যে ওঠানামা সনাক্ত করতে সক্ষম হয় না, যেমন ওঠানামা সূচক সহ ব্যবহার করা উচিত।
পজিশন হোল্ডিং নিয়মগুলি অপ্টিমাইজ করা প্রয়োজন, যেমন স্টপ লস, স্টপ স্টপ; বা কেবলমাত্র প্রবণতার শুরুতে লাফ ধরা।
বিভিন্ন প্যারামিটার সেটিং পরীক্ষা করা যেতে পারে, যেমন sma চক্র; অথবা ইন্ডেক্সাল মুভিং এভারেজ বা স্বনির্ধারিত মুভিং এভারেজ ব্যবহার করা যেতে পারে।
প্ল্যাটফর্মের মেয়াদে অর্থহীন লেনদেন এড়াতে, চলমান গড়ের দিকনির্দেশনা, কোণ ইত্যাদির মতো সিদ্ধান্তগুলি যুক্ত করা যেতে পারে।
আপনি যদি ব্রিন ব্যান্ডের মতো অস্থিরতার সূচকগুলির সাথে একত্রিত হন, তবে যখন অস্থিরতা বাড়বে তখন ট্রেডিং বন্ধ করে দেওয়া যেতে পারে।
পজিশন ম্যানেজমেন্টের নিয়মগুলি নির্ধারণ করা যেতে পারে, যেমন স্থির পরিমাণে পজিশন খোলার, ধাপে ধাপে পজিশন বৃদ্ধি, তহবিল পরিচালনা ইত্যাদি।
একক ঝুঁকি নিয়ন্ত্রণের জন্য, স্টপ লস স্টপ লাইন সেট করা যেতে পারে, অথবা একটি নির্দিষ্ট অনুপাতের ক্ষতির সময় নতুন অর্ডার স্থগিত করা যেতে পারে।
এই নিবন্ধটি নোরোর তৈরি করা ট্র্যাকিং মুভিং এভারেজ উড়ন্ত কৌশলটির বিশদ বিশ্লেষণ করে। এই কৌশলটি দামের উড়ন্ত মুভিং এভারেজের বৈশিষ্ট্যগুলি ব্যবহার করে, সূচক অক্ষ এবং রঙের অঙ্কন ডিজাইন করে, প্রবেশের সময় নির্ধারণ করে। একই সাথে প্লেইন অর্ডার লজিকটি অপ্টিমাইজ করা হয়, ব্যবসায়ের সময়সীমা সেট করা হয়। তবে এই কৌশলটি চলমান গড়ের ট্র্যাকিংয়ের অন্তর্নিহিত ত্রুটি রয়েছে।
/*backtest
start: 2022-10-19 00:00:00
end: 2023-10-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2018
//@version=3
strategy(title = "Noro's Shift Close Strategy v1.0", shorttitle = "Shift Close 1.0", default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 5)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
limit = input(10)
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From Day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To Day")
//Shift MA
sma = sma(ohlc4, 3)
ind = ((close / sma) - 1) * 100
//Oscilator
plot(3 * limit, color = na, transp = 0)
plot(limit, color = black, transp = 0)
plot(0, color = black, transp = 0)
plot(-1 * limit, color = black, transp = 0)
plot(-3 * limit, color = na, transp = 0)
plot(ind, linewidth = 3, transp = 0)
col = ind > limit ? red : ind < -1 * limit ? lime : na
bgcolor(col, transp = 0)
//Signals
size = strategy.position_size
up = ind < -1 * limit
dn = ind > limit
exit = ind > -1 * limit and ind < limit
//Trading
lot = 0.0
lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1]
if up
if strategy.position_size < 0
strategy.close_all()
strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if dn
if strategy.position_size > 0
strategy.close_all()
strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if exit
strategy.close_all()