হ্যালো সবাই. আশা করি আপনারা সবাই ভালো আছেন। আমার প্রথম স্ক্রিপ্ট এখানে পোস্ট করার পর অনেক দিন হয়ে গেছে, এবং আমি এর থেকে অনেক সাড়া পেয়েছি।
তাই, আমি ভেবেছিলাম এই স্ক্রিপ্টটি সবার সাথে শেয়ার করা উচিত, এবং যে কেউ এটিকে দরকারী মনে করতে পারে। ব্যক্তিগতভাবে, আমি এটিকে সাধারণ বাজারের অবস্থা বলতে ব্যবহার করি।
এখানে আমি কিভাবে কাজ করি : স্ক্রিপ্ট মসৃণ হেইকেন আশি মোমবাতি ব্যবহার করে বাজারের সামগ্রিক দিক নির্ধারণ করার চেষ্টা করে। রঙিন সিস্টেম (উজ্জ্বল এবং গাঢ় রং ব্যবহার করে) শক্তিশালী বাজার এবং দুর্বল বাজার অবস্থার সনাক্ত করার একটি প্রচেষ্টা। স্ক্রিপ্টের মধ্যে একটি দোলকও রয়েছে, তবে এখন পর্যন্ত এটি গ্রাফ করা হয়নি। ক্রেডিট @jackvmk, আমি এই সূচকটিতে তার ওপেন-স্ক্রিপ্ট কোডের একটি অংশ ব্যবহার করেছি।
আমি সূচক গ্রাফের ঢালকে বাজারের অবস্থার জন্য ফিল্টার হিসাবে ব্যবহার করার কথা বিবেচনা করেছি। গ্রাফটি
আমি আশা করি আপনি এটিকে দরকারী মনে করবেন। যদি আপনি এটি ব্যবহার করার উপায় খুঁজে পান, দয়া করে এটি সম্প্রদায়ের সাথে মন্তব্য বিভাগে শেয়ার করুন।
দ্রষ্টব্যঃ এটি কোনোভাবেই আর্থিক পরামর্শ নয়। আপনাকে আপনার গবেষণা করতে হবে এবং আপনার ট্রেডিং স্টাইল এবং কৌশলতে এই সূচকটি প্রয়োগ করার উপায় বের করতে হবে।
যাইহোক, আমি এখন থেকে যে কোন পরবর্তী স্ক্রিপ্টের জন্য
ব্যাকটেস্ট
/*backtest start: 2022-04-08 00:00:00 end: 2022-05-07 23:59:00 period: 10m basePeriod: 1m 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/ // © Professeur_X //@version=5 indicator(title='HA Market Bias', shorttitle='HA Market Bias', overlay=true) tf(_res, _exp, gaps_on) => gaps_on == 0 ? request.security(syminfo.tickerid, _res, _exp) : gaps_on == true ? request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_on, barmerge.lookahead_off) : request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_off, barmerge.lookahead_off) ha_htf = '' show_ha = input.bool(true, "Show HA Plot/ Market Bias", group="HA Market Bias") ha_len = input(100, 'Period', group="HA Market Bias") ha_len2 = input(100, 'Smoothing', group="HA Market Bias") // Calculations { o = ta.ema(open, ha_len) c = ta.ema(close, ha_len) h = ta.ema(high, ha_len) l = ta.ema(low, ha_len) haclose = tf(ha_htf, (o + h + l + c) / 4, 0) xhaopen = tf(ha_htf, (o + c) / 2, 0) haopen = na(xhaopen[1]) ? (o + c) / 2 : (xhaopen[1] + haclose[1]) / 2 hahigh = math.max(h, math.max(haopen, haclose)) halow = math.min(l, math.min(haopen, haclose)) o2 = tf(ha_htf, ta.ema(haopen, ha_len2), 0) c2 = tf(ha_htf, ta.ema(haclose, ha_len2), 0) h2 = tf(ha_htf, ta.ema(hahigh, ha_len2), 0) l2 = tf(ha_htf, ta.ema(halow, ha_len2), 0) ha_avg = (h2 + l2) / 2 // } // Oscillator { osc_len = input.int(7, "Oscillator Period", group="HA Market Bias") osc_bias = 100 *(c2 - o2) osc_smooth = ta.ema(osc_bias, osc_len) sigcolor = (osc_bias > 0) and (osc_bias >= osc_smooth) ? color.new(color.lime, 35) : (osc_bias > 0) and (osc_bias < osc_smooth) ? color.new(color.lime, 75) : (osc_bias < 0) and (osc_bias <= osc_smooth) ? color.new(color.red, 35) : (osc_bias < 0) and (osc_bias > osc_smooth) ? color.new(color.red, 75) : na // } // Plots { p_h = plot(h2, "Bias High", display=display.none, editable=false) p_l = plot(l2, "Bias Low", display=display.none, editable=false) p_avg = plot(ha_avg, "Bias Avergae", display=display.none, editable=false) col = o2 > c2 ? color.red : color.lime if o2 > c2 strategy.entry("Enter Long", strategy.long) else if o2 < c2 strategy.entry("Enter Short", strategy.short)