ایس ایم اے، ای ایم اے اور حجم پر مبنی سادہ رفتار کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-08 11:15:30
ٹیگز:

img

جائزہ

یہ ایک سادہ انٹرا ڈے رفتار کی حکمت عملی ہے جو صرف لمبی ہوتی ہے اور مختصر نہیں ہوتی ہے۔ یہ ایس ایم اے ، ای ایم اے اور حجم کے اشارے استعمال کرتی ہے تاکہ مارکیٹ میں بہترین وقت میں داخل ہونے کی کوشش کی جاسکے جب قیمت اور رفتار دونوں اوپر کی طرف بڑھ رہے ہوں۔ اس کا فائدہ کچھ رجحان کی شناخت کی صلاحیت رکھتے ہوئے آسان ہے۔

حکمت عملی کا اصول

انٹری سگنل منطق یہ ہے: جب ایس ایم اے ای ایم اے سے زیادہ ہے ، اور ایک مسلسل 3 بار یا 4 بار اپ ٹرینڈ پیٹرن ہے ، جس میں درمیانی سلاخوں کی سب سے کم قیمت اسٹارٹر اپ ٹرینڈ بار کی کھلی قیمت سے زیادہ ہے ، تو انٹری سگنل تیار ہوتا ہے۔

آؤٹ سگنل منطق یہ ہے: جب ایس ایم اے ای ایم اے سے نیچے عبور کرتا ہے تو ، ایک آؤٹ سگنل تیار ہوتا ہے۔

یہ حکمت عملی صرف لمبی ہوتی ہے اور مختصر نہیں ہوتی ہے۔ اس کے داخلے اور باہر نکلنے کی منطق میں مستقل اپ ٹرینڈز کو پہچاننے کی کچھ صلاحیت ہے۔

فوائد کا تجزیہ

اس حکمت عملی کے فوائد:

  1. منطق سادہ اور سمجھنے اور لاگو کرنے کے لئے آسان ہے؛

  2. پیرامیٹر ٹیوننگ میں لچک کے لئے ایس ایم اے، ای ایم اے اور حجم جیسے عام تکنیکی اشارے استعمال کرتا ہے۔

  3. مسلسل اپ ٹرینڈ کے دوران کچھ مواقع کو پکڑنے میں کچھ صلاحیت رکھتا ہے.

خطرے کا تجزیہ

اس حکمت عملی کے خطرات:

  1. گرتی ہوئی رجحانات یا استحکام کے بازاروں کا پتہ لگانے میں ناکامی ، جس کے نتیجے میں بڑے پیمانے پر کھپت ہوتی ہے۔

  2. شارٹ شیئرنگ کے مواقع کو استعمال کرنے میں ناکامی، نیچے کے رجحانات کے خلاف ہیجنگ کرنے میں ناکامی، اچھے منافع کے امکانات کو یاد کرنا۔

  3. حجم اشارے اعلی تعدد کے اعداد و شمار پر اچھی طرح سے کام نہیں کرتا، پیرامیٹرز کو ایڈجسٹ کرنے کی ضرورت ہے؛

  4. خطرات کو کنٹرول کرنے کے لئے سٹاپ نقصان کا استعمال کر سکتے ہیں.

اصلاح کی ہدایات

اس حکمت عملی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:

  1. اوسط واپسی کے مواقع کے لیے شارٹ کٹنگ کی صلاحیت شامل کرنا۔

  2. بہتر رجحان کا پتہ لگانے کے لئے زیادہ جدید اشارے جیسے ایم اے سی ڈی اور آر ایس آئی کا استعمال؛

  3. کھپت کو کم کرنے کے لئے سٹاپ نقصان کے منطق کو بہتر بنانا؛

  4. بہترین پیرامیٹر سیٹ تلاش کرنے کے لئے پیرامیٹرز کو ایڈجسٹ کرنا اور مختلف ٹائم فریموں کی جانچ کرنا۔

نتیجہ

خلاصہ یہ ہے کہ یہ ایک بہت ہی آسان رجحان ہے جس میں اندراج کے وقت کے لئے ایس ایم اے ، ای ایم اے اور حجم کا استعمال کرتے ہوئے حکمت عملی ہے۔ اس کا فائدہ سادہ اور لاگو کرنا آسان ہے ، ابتدائی افراد کے لئے سیکھنا اچھا ہے ، لیکن یہ استحکام یا نیچے کے رجحانات کا پتہ نہیں لگاسکتا ہے اور اس میں خطرات ہیں۔ شارٹ شیڈنگ ، اشارے کو بہتر بنانے اور اسٹاپ نقصان وغیرہ متعارف کرانے سے بہتری لائی جاسکتی ہے۔


/*backtest
start: 2023-11-07 00:00:00
end: 2023-12-02 00:00:00
period: 2h
basePeriod: 15m
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/
// © slip_stream

//@version=4

// Simple strategy for riding the momentum and optimising the timings of truer/longer price moves upwards for an long posistions on a daily basis (can be used, but with less effect
// on other time frames. Volume settings would have to be adjusted by the user accordingly. (short positions are not used).
// This strategy has default settings of a short(er) SMA of 10, a long(er) EMA of 20, and Volume trigger of 10 units and above. All these settings can be changed by the user
// using the GUI settings and not having to change the script.

// The strategy will only open a long position when there is a clear indication that price momentum is upwards through the SMA moving and remaining above the EMA (mandatory) and price period indicators
// of either 1) a standard 3 bar movement upwards, 2) a standard but "aggressive" 3 or 4 bar play where the low of the middle resting bars can be equal to or higher than (i.e. not
// the more standard low of about half) of the opening of the ignition bar. The "aggression" of the 3/4 bar play was done in order to counteract the conservatisme of having a mandatory
// SMA remaining higher than the EMA (this would have to be changed in the script by the user if they want to optimise to their own specifications. However, be warned, all programmatic
// settings for the maximum acceptable low of the middle resting bars runs a risk of ignoring good entry points due to the low being minutely e.g. 0.01%, lower than the user defined setting)


strategy(title = "Simple Momentum Strategy Based on SMA, EMA and Volume", overlay = true, pyramiding = 1, initial_capital = 100000, currency = currency.USD)


// Obtain inputs
sma_length = input(defval = 10, minval=1, type = input.integer, title = "SMA (small length)")
ema_length = input(defval = 20,minval=1, type = input.integer, title = "EMA (large length)")
volume_trigger = input(defval = 10, title = "Volume Trigger", type = input.integer)
sma_line = sma(close, sma_length)
ema_line = ema(close, ema_length)


// plot SMA and EMA lines with a cross for when they intersect
plot(sma_line, color = #8b0000, title = "SMA")
plot(ema_line, color = #e3d024, title = "EMA")
plot(cross(sma_line, ema_line) ? sma_line : na, style = plot.style_cross, linewidth = 4, color = color.white)


// Create variables
// variables to check if trade should be entered
//three consecutive bar bar moves upwards and volume of at least one bar is more than 10
enter_trade_3_bar_up = sma_line > ema_line and close[1] >= close [2] and close[3] >= close[4] and close[2] >= close[3] and (volume[1] >= volume_trigger or volume[2] >= volume_trigger or volume[3] >= volume_trigger)
// aggressive three bar play that ensures the low of the middle bar is equal to or greater than the open of the instigator bar. Volume is not taken into consideration (i.e. aggressive/risky)
enter_3_bar_play = sma_line > ema_line and close[1] > close[3] and low[2] >= open[3]
// aggressive four bar play similar to the 3 bar play above
enter_4_bar_play = sma_line > ema_line and close[1] > close[4] and low[2] >= open[4]
trade_entry_criteria = enter_trade_3_bar_up or enter_3_bar_play or enter_4_bar_play // has one of the trade entry criterias returned true?

// exit criteria for the trade: when the sma line goes under the ema line
trade_exit_criteria = crossunder (sma_line, ema_line)


if (year >= 2019)
    strategy.entry(id = "long", long = true, qty = 1, when = trade_entry_criteria)
    strategy.close(id = "long", when = trade_exit_criteria, qty = 1)
    // for when you want to brute force close all open positions: strategy.close_all (when = trade_exit_criteria)

مزید