নোরোর ট্রেন্ড মুভিং এভারেজ স্ট্র্যাটেজির চরম সংস্করণ

লেখক:চাওঝাং, তারিখঃ 2024-01-31 17:00:53
ট্যাগঃ

img

সারসংক্ষেপ

এই কৌশলটি প্রবণতা দিক এবং দীর্ঘ / সংক্ষিপ্ত সুযোগগুলি সনাক্ত করতে দুটি চলমান গড় সূচক ব্যবহার করে। ধীর চলমান গড় (নীল লাইন) সামগ্রিক প্রবণতা দিক নির্ধারণ করতে ব্যবহৃত হয়, যখন দাম চ্যানেলের সাথে যুক্ত দ্রুত চলমান গড় (লাল লাইন) ট্রেডিং সুযোগগুলি আবিষ্কার করতে ব্যবহৃত হয়।

কৌশলগত যুক্তি

  1. দুইটি চলমান গড় গণনা করুন - সামগ্রিক প্রবণতা নির্ধারণের জন্য সময়সীমা 21 এর সাথে একটি ধীর MA, এবং সময়সীমা 5 এর সাথে একটি দ্রুত MA যা মূল্য চ্যানেলের সাথে একত্রিত করে ট্রেডিং সুযোগগুলি খুঁজে পায়।

  2. বর্তমান মূল্য পূর্ববর্তী সময়কালে গঠিত মূল্য চ্যানেলের মাধ্যমে ভঙ্গ করে কিনা তা পরীক্ষা করুন। একটি ব্রেকআউট একটি সম্ভাব্য ট্রেডিং সুযোগের সংকেত দেয়।

  3. সাম্প্রতিক মোমবাতিগুলির সংখ্যা এবং দিক গণনা করুন। উদাহরণস্বরূপ, বেশ কয়েকটি ধারাবাহিক bearish মোমবাতি একটি দীর্ঘ সুযোগের সংকেত দিতে পারে, যখন ধারাবাহিক bullish মোমবাতি একটি সংক্ষিপ্ত সুযোগের সংকেত দিতে পারে। মোমবাতি সংখ্যা বার প্যারামিটারের মাধ্যমে কনফিগারযোগ্য।

  4. দীর্ঘ / সংক্ষিপ্ত সংকেত তৈরি করতে উপরের সমস্ত কারণকে একত্রিত করুন। যখন দামের গতি ধীর এমএ প্রবণতার দিকের সাথে সারিবদ্ধ হয়, দ্রুত এমএ বা মূল্য চ্যানেল সংকেত উত্পাদন করে এবং মোমবাতি সরানোর শর্তটি মেলে তখন একটি সংকেত সক্রিয় হয়।

সুবিধা

  1. দ্বৈত চলমান গড় সিস্টেম কার্যকরভাবে প্রবণতার দিকনির্দেশ অনুসরণ করে।

  2. ট্রেডিংয়ের সুযোগগুলি ধরার জন্য দ্রুততম এমএ এবং মূল্য চ্যানেল মিলিয়ে প্রাথমিকভাবে ব্রেকআউট পয়েন্টগুলি সনাক্ত করে।

  3. এছাড়াও বাজার বিপর্যয়ের ফাঁদে না পড়ার জন্য ক্যান্ডেলস্টিকের দিকনির্দেশ এবং গণনা বিবেচনা করে।

  4. কাস্টমাইজযোগ্য এমএ পরামিতি বিভিন্ন পণ্য এবং সময়সীমার জন্য কাজ করে।

ঝুঁকি এবং হ্রাস

  1. ডুয়াল এমএ পার্শ্ববর্তী বাজারের সময় মিথ্যা সংকেত তৈরি করতে পারে। অস্থির বাজার ট্রেডিং এড়ানোর জন্য দোলক বা এটিআর যুক্ত করতে পারে।

  2. বাজারের অপ্রত্যাশিত গতিতে আটকা পড়ার ঝুঁকি আছে।

  3. সম্পূর্ণরূপে বিপরীতমুখী হওয়া অসম্ভব। কৌশলকে আরও শক্তিশালী করার জন্য যুক্তি এবং পরামিতিগুলি উন্নত করা অব্যাহত থাকবে।

উন্নতির সুযোগ

  1. অস্থির বাজারে ভুল ট্রেড এড়াতে ADX, MACD এর মতো সহায়ক সূচক যুক্ত করুন।

  2. ডায়নামিক স্টপ লস গণনা, যেমন ATR এবং ঝুঁকি পছন্দ উপর ভিত্তি করে।

  3. অভিযোজন ক্ষমতা জন্য মেশিন লার্নিং মাধ্যমে পরামিতি অপ্টিমাইজেশান।

  4. যন্ত্রের বৈশিষ্ট্যের উপর ভিত্তি করে সূক্ষ্ম সুরক্ষা পরামিতি, উদাহরণস্বরূপ ক্রিপ্টোর জন্য স্বল্প সময়কাল।

সিদ্ধান্ত

সামগ্রিকভাবে এই কৌশলটি ট্রেন্ডিং মার্কেটগুলি ট্র্যাক করতে খুব ভাল কাজ করে, অতিরিক্ত ব্রেকআউট সুযোগের সাথে। সঠিক উন্নতির সাথে এটি একটি বাণিজ্যিকভাবে কার্যকর উচ্চ মানের পরিমাণ কৌশলতে রূপান্তরিত হতে পারে। আমরা আরও বেশি বাজারে স্থিতিশীলভাবে বাণিজ্য করার জন্য এটিকে উন্নত করতে থাকব।


/*backtest
start: 2023-12-31 00:00:00
end: 2024-01-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title = "Noro's Trend MAs Strategy v1.9 Extreme", shorttitle = "Trend MAs str 1.9 extreme", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

//Settings
needlong = input(true, "long")
needshort = input(true, "short")
needstops = input(false, "stops")
stoppercent = input(5, defval = 5, minval = 1, maxval = 50, title = "Stop, %")
useohlc4 = input(false, defval = false, title = "Use OHLC4")
usefastsma = input(true, "Use fast MA Filter")
fastlen = input(5, defval = 5, minval = 1, maxval = 50, title = "fast MA Period")
slowlen = input(21, defval = 20, minval = 2, maxval = 200, title = "slow MA Period")
bars = input(2, defval = 2, minval = 0, maxval = 3, title = "Bars Q")
needbg = input(false, defval = false, title = "Need trend Background?")
needarr = input(false, defval = false, title = "Need entry arrows?")
needex = input(true, defval = true, title = "Need extreme? (crypto/fiat only!!!)")

src = useohlc4 == true ? ohlc4 : close

//PriceChannel 1
lasthigh = highest(src, slowlen)
lastlow = lowest(src, slowlen)
center = (lasthigh + lastlow) / 2

//PriceChannel 2
lasthigh2 = highest(src, fastlen)
lastlow2 = lowest(src, fastlen)
center2 = (lasthigh2 + lastlow2) / 2

//Trend
trend = low > center and low[1] > center[1] ? 1 : high < center and high[1] < center[1] ? -1 : trend[1]

//Bars
bar = close > open ? 1 : close < open ? -1 : 0
redbars = bars == 0 ? 1 : bars == 1 and bar == -1 ? 1 : bars == 2 and bar == -1 and bar[1] == -1 ? 1 : bars == 3 and bar == -1 and bar[1] == -1 and bar[2] == -1 ? 1 : 0
greenbars = bars == 0 ? 1 : bars == 1 and bar == 1 ? 1 : bars == 2 and bar == 1 and bar[1] == 1 ? 1 : bars == 3 and bar == 1 and bar[1] == 1 and bar[2] == 1 ? 1 : 0

//Signals
up = trend == 1 and (low < center2 or usefastsma == false) and (redbars == 1) ? 1 : 0
dn = trend == -1 and (high > center2 or usefastsma == false) and (greenbars == 1) ? 1 : 0

up2 = high < center and high < center2 and bar == -1 ? 1 : 0
dn2 = low > center and low > center2 and bar == 1 ? 0 : 0

//Lines
plot(center, color = blue, linewidth = 3, transp = 0, title = "Slow MA")
plot(center2, color = red, linewidth = 3, transp = 0, title = "PriceChannel 2")

//Arrows
plotarrow(up == 1 and needarr == true ? 1 : 0, colorup = black, colordown = black, transp = 0)
plotarrow(dn == 1 and needarr == true ? -1 : 0, colorup = black, colordown = black, transp = 0)

//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 90)

//Alerts
alertcondition(up == 1, title='buy', message='Uptrend')
alertcondition(dn == 1, title='sell', message='Downtrend')

//Trading
stoplong = up == 1 and needstops == true ? close - (close / 100 * stoppercent) : stoplong[1]
stopshort = dn == 1 and needstops == true ? close + (close / 100 * stoppercent) : stopshort[1]

longCondition = up == 1 or (up2 == 1 and needex == true)
if (longCondition)
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)
    strategy.exit("Stop Long", "Long", stop = stoplong)

shortCondition = dn == 1
if (shortCondition)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)
    strategy.exit("Stop Short", "Short", stop = stopshort)

আরো