اوما اور اپولو دوہری ٹریک تجارتی حکمت عملی


تخلیق کی تاریخ: 2023-11-02 17:09:35 آخر میں ترمیم کریں: 2023-11-02 17:09:35
کاپی: 3 کلکس کی تعداد: 678
1
پر توجہ دیں
1617
پیروکار

اوما اور اپولو دوہری ٹریک تجارتی حکمت عملی

جائزہ

اس حکمت عملی میں اورما انڈیکس اور اپولو انڈیکس ، دو اہم تکنیکی اشارے شامل ہیں ، جس سے متعدد دوہری تجارت کا امکان ہے۔ اس کا بنیادی نظریہ یہ ہے کہ جب لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی

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

یہ حکمت عملی 50 اور 200 دن کی دو متحرک اوسطوں کا استعمال کرتی ہے تاکہ وسط لمبی لائن کے رجحانات کا اندازہ لگایا جاسکے۔ 50 دن کی لائن 200 دن کی لائن سے اوپر کی طرف اشارہ کرتی ہے کہ یہ ایک کثیر جہتی رجحان میں ہے ، اس کے برعکس ، یہ ایک ہوائی جہاز کا رجحان ہے۔

اس کے بعد ، اس حکمت عملی نے اوما اشارے کا استعمال کرتے ہوئے مختصر لائنوں کی قیمتوں میں ردوبدل کے مواقع کی نشاندہی کی۔ اوما اشارے میں٪ K لائن اور٪ D لائن شامل ہیں ، جو ایک سادہ حرکت پذیر اوسط کے ہموار علاج کے بعد آر ایس آئی اشارے کے نتیجے میں ہیں۔ جب٪ K لائن اوورسوڈ زون ((80 سے اوپر) سے نیچے کی طرف سے % D لائن کو توڑ دیتی ہے ، تو یہ ظاہر ہوتا ہے کہ قیمت اوپربورڈ سے ریبوڈ میں تبدیل ہوگئی ہے ، یہ ایک خالی انتخاب کا وقت ہے۔ جب٪ K اوورسوڈ زون ((20 سے کم) سے اوپر کی طرف سے % D لائن کو توڑتا ہے ، تو یہ ظاہر ہوتا ہے کہ قیمت اوورسوڈ زون سے ریبوڈ ہوئی ہے ، یہ ایک کثیر اختیار کا وقت ہے۔

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

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

مذکورہ بالا عمل کے ذریعہ ، اس حکمت عملی نے ایک مستحکم کثیر جہتی دوہری ٹریڈنگ سسٹم کی تعمیر کے لئے لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لم

اسٹریٹجک فوائد

  1. اس حکمت عملی میں رجحان سازی اور الٹ اشارے کا ایک مجموعہ شامل ہے ، جس میں رجحان سازی اور الٹ ٹریڈنگ کے فوائد کو مدنظر رکھتے ہوئے ، ایک مستحکم مخلوط تجارتی فریم ورک تشکیل دیا گیا ہے۔

  2. ڈبل اشارے فلٹرنگ کی طرف سے، غلط رپورٹ کی شرح کو کم کرنے کے سگنل کی وشوسنییتا کو بہتر بنانے کے لئے.

  3. اسٹریٹجک پیرامیٹرز سادہ ہیں ، سمجھنے اور بہتر بنانے میں آسان ہیں ، اور یہ مقدار کی تجارت کے لئے موزوں ہیں۔

  4. اس حکمت عملی کا کام بہت اچھا ہے اور اس میں جیت اور نقصان کا تناسب بہت اچھا ہے۔

  5. دو طرفہ کثیر جہتی ٹریک کا استعمال کرتے ہوئے ، آپ کو ایک ہی سمت تک محدود نہیں ، تجارت کے مواقع کے لئے مستقل رسائی حاصل ہوگی۔

اسٹریٹجک رسک

  1. اس حکمت عملی کے طور پر ، جب رجحانات میں تبدیلی آتی ہے تو ، مسلسل نقصانات کا ایک سلسلہ پیدا ہوسکتا ہے۔

  2. اس حکمت عملی میں تاجروں کے جذبات پر قابو پانے کی زیادہ ضرورت ہوتی ہے ، جس میں واپسی کی ایک خاص شرح برداشت کرنے کی ضرورت ہوتی ہے۔

  3. کچھ پیرامیٹرز جیسے چلتی اوسط کی مدت کچھ حد تک ذہنیت رکھتے ہیں ، مناسب پیرامیٹرز کو ریٹرننگ کی اصلاح کے ذریعہ طے کرنے کی ضرورت ہے۔

  4. اورما اور اپولو دونوں ہی اشارے غیر معمولی اتار چڑھاو کے لئے حساس ہیں ، اور انتہائی حالات میں ان کی ناکامی کا خطرہ ہے۔

  5. اس حکمت عملی کو زیادہ سے زیادہ غیر مستحکم مارکیٹ کے ماحول کے لئے موزوں ہے، جس میں رجحانات کے واضح حالات میں اثر انداز ہوسکتا ہے.

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

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

  1. مختلف پیرامیٹرز کے امتزاج کو بہتر پیرامیٹرز کی ترتیب کے ل test ٹیسٹ کریں۔ مثال کے طور پر EWMA ہموار منتقل اوسط اور اسی طرح کے اشارے استعمال کرنے کی کوشش کی جاسکتی ہے۔

  2. حجم یا BV جیسے اشارے شامل کرنے سے انحراف کا اندازہ لگایا جاسکتا ہے ، جس سے سگنل کی وشوسنییتا کو مزید تصدیق کی جاسکتی ہے۔

  3. گھبراہٹ کے اشارے جیسے VIX کو نگرانی کے اشارے کے طور پر شامل کریں ، تاکہ مارکیٹ میں گھبراہٹ کے وقت پوزیشنوں کو کم کیا جاسکے۔

  4. اسٹاپ نقصان کی روک تھام کی حکمت عملی کو بہتر بنائیں ، مثال کے طور پر متحرک اسٹاپ جیسے اے ٹی آر اسٹاپ۔

  5. مشین لرننگ الگورتھم متعارف کروانا پیرامیٹرز کی ترتیب کو متحرک طور پر بہتر بنانے کے لئے۔

  6. سگنل کے معیار کو بہتر بنانے کے لئے ملٹی فیکٹر ماڈل شامل کریں۔

خلاصہ کریں۔

یہ حکمت عملی مجموعی طور پر ایک مستحکم اور موثر مقداری تجارتی حکمت عملی ہے۔ یہ رجحان کے فیصلے اور الٹ اشارے کے ساتھ مل کر ، اورما اشارے اور اپولو اشارے کے دوہری توثیق کا استعمال کرتا ہے ، جو مختصر لائن قیمتوں میں الٹ کے مواقع کو مؤثر طریقے سے دریافت کرسکتا ہے۔ یہ حکمت عملی ایک مضبوط رجحاناتی نظام یا الٹ کے نظام کا استعمال کرنے کے مقابلے میں زیادہ مستحکم ہے ، اور واپسی کا کنٹرول بھی بہتر ہے۔ یہ ایک تجویز کردہ مقداری تجارتی حکمت عملی ہے۔ یقینا ، صارف کو بھی اس میں موجود خطرے کے مقامات پر بھی توجہ دینے کی ضرورت ہے۔ پیرامیٹرز کی اصلاح ، نقصانات کو روکنے ، ماحولیاتی شناخت وغیرہ کے ذریعہ خطرے کو کنٹرول کرنے کے لئے حکمت عملی کو زیادہ سے زیادہ اثر انداز کرنے کے لئے۔

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-10-25 00:00:00
end: 2023-10-28 00:00:00
period: 5m
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/
// © PtGambler

//@version=5
strategy("2 EMA + Stoch RSI + ATR [Pt]", shorttitle = "2EMA+Stoch+ATR", overlay=true, initial_capital = 10000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills = false, max_bars_back = 500)

// ********************************** Trade Period / Strategy Setting **************************************
startY = input(title='Start Year', defval=2011, group = "Backtesting window")
startM = input.int(title='Start Month', defval=1, minval=1, maxval=12, group = "Backtesting window")
startD = input.int(title='Start Day', defval=1, minval=1, maxval=31, group = "Backtesting window")
finishY = input(title='Finish Year', defval=2050, group = "Backtesting window")
finishM = input.int(title='Finish Month', defval=12, minval=1, maxval=12, group = "Backtesting window")
finishD = input.int(title='Finish Day', defval=31, minval=1, maxval=31, group = "Backtesting window")
timestart = timestamp(startY, startM, startD, 00, 00)
timefinish = timestamp(finishY, finishM, finishD, 23, 59)

// ******************************************************************************************

group_ema = "EMA"
group_stoch = "Stochastic RSI"
group_atr = "ATR Stoploss Finder"

// ----------------------------------------- 2 EMA -------------------------------------

ema1_len = input.int(50, "EMA Length 1", group = group_ema)
ema2_len = input.int(200, "EMA Length 2", group = group_ema)

ema1 = ta.ema(close, ema1_len)
ema2 = ta.ema(close, ema2_len)

plot(ema1, "ema1", color.white, linewidth = 2)
plot(ema2, "ema2", color.orange, linewidth = 2)

ema_bull = ema1 > ema2
ema_bear = ema1 < ema2


// -------------------------------------- Stochastic RSI -----------------------------

smoothK = input.int(3, "K", minval=1, group = group_stoch)
smoothD = input.int(3, "D", minval=1, group = group_stoch)
lengthRSI = input.int(14, "RSI Length", minval=1, group = group_stoch)
lengthStoch = input.int(14, "Stochastic Length", minval=1, group = group_stoch)
src = close
rsi1 = ta.rsi(src, lengthRSI)
k = ta.sma(ta.stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = ta.sma(k, smoothD)

var trigger_stoch_OB = k > 80
var trigger_stoch_OS = k < 20

stoch_crossdown = ta.crossunder(k, d)
stoch_crossup = ta.crossover(k, d)

P_hi = ta.pivothigh(k,1,1)
P_lo = ta.pivotlow(k,1,1)

previous_high = ta.valuewhen(P_hi, k, 1)
previous_low = ta.valuewhen(P_lo, k, 1)
recent_high = ta.valuewhen(P_hi, k, 0)
recent_low = ta.valuewhen(P_lo, k, 0)

// --------------------------------------- ATR stop loss finder ------------------------

length = input.int(title='Length', defval=14, minval=1, group = group_atr)
smoothing = input.string(title='Smoothing', defval='EMA', options=['RMA', 'SMA', 'EMA', 'WMA'], group = group_atr)
m = input.float(0.7, 'Multiplier', step = 0.1, group = group_atr)
src1 = input(high, "Source for upper band", group = group_atr)
src2 = input(low, "Source for lower band", group = group_atr)

showatr = input.bool(true, 'Show ATR Bands', group = group_atr)
collong = input.color(color.purple, 'Long ATR SL', inline='1', group = group_atr)
colshort = input.color(color.purple, 'Short ATR SL', inline='2', group = group_atr)

ma_function(source, length) =>
    if smoothing == 'RMA'
        ta.rma(source, length)
    else
        if smoothing == 'SMA'
            ta.sma(source, length)
        else
            if smoothing == 'EMA'
                ta.ema(source, length)
            else
                ta.wma(source, length)

a = ma_function(ta.tr(true), length) * m
up = ma_function(ta.tr(true), length) * m + src1
down = src2 - ma_function(ta.tr(true), length) * m

p1 = plot(showatr ? up : na, title='ATR Short Stop Loss', color=colshort)
p2 = plot(showatr ? down : na, title='ATR Long Stop Loss', color=collong)

// ******************************* Profit Target / Stop Loss *********************************************

RR = input.float(2.0, "Reward to Risk ratio (X times SL)", step = 0.1, group = "Profit Target")

var L_PT = 0.0
var S_PT = 0.0
var L_SL = 0.0
var S_SL = 0.0

BSLE = ta.barssince(strategy.opentrades.entry_bar_index(0) == bar_index)

if strategy.position_size > 0 and BSLE == 1
    L_PT := close + (close-down)*RR
    L_SL := L_SL[1]
    S_PT := close - (up - close)*RR
    S_SL := up
else if strategy.position_size < 0 and BSLE == 1
    S_PT := close - (up - close)*RR
    S_SL := S_SL[1]
    L_PT := close + (close-down)*RR
    L_SL := down
else if strategy.position_size != 0
    L_PT := L_PT[1] 
    S_PT := S_PT[1]
else
    L_PT := close + (close-down)*RR
    L_SL := down
    S_PT := close - (up - close)*RR
    S_SL := up

entry_line = plot(strategy.position_size != 0 ? strategy.opentrades.entry_price(0) : na, "Entry Price", color.white, linewidth = 1, style = plot.style_linebr)

L_PT_line = plot(strategy.position_size > 0 and BSLE > 0 ? L_PT : na, "L PT", color.green, linewidth = 2, style = plot.style_linebr)
S_PT_line = plot(strategy.position_size < 0 and BSLE > 0 ? S_PT : na, "S PT", color.green, linewidth = 2, style = plot.style_linebr)

L_SL_line = plot(strategy.position_size > 0 and BSLE > 0 ? L_SL : na, "L SL", color.red, linewidth = 2, style = plot.style_linebr)
S_SL_line = plot(strategy.position_size < 0 and BSLE > 0 ? S_SL : na, "S SL", color.red, linewidth = 2, style = plot.style_linebr)

fill(L_PT_line, entry_line, color = color.new(color.green,90))
fill(S_PT_line, entry_line, color = color.new(color.green,90))
fill(L_SL_line, entry_line, color = color.new(color.red,90))
fill(S_SL_line, entry_line, color = color.new(color.red,90))


// ---------------------------------- strategy setup ------------------------------------------------------

var L_entry_trigger1 = false
var S_entry_trigger1 = false

L_entry_trigger1 := ema_bull and close < ema1 and k < 20 and strategy.position_size == 0
S_entry_trigger1 := ema_bear and close > ema1 and k > 80 and strategy.position_size == 0

L_entry1 = L_entry_trigger1[1] and stoch_crossup and recent_low > previous_low
S_entry1 = S_entry_trigger1[1] and stoch_crossdown and recent_high < previous_high

//debugging
plot(L_entry_trigger1[1]?1:0, "L Entry Trigger")
plot(stoch_crossup?1:0, "Stoch Cross Up")
plot(recent_low > previous_low?1:0, "Higher low")

plot(S_entry_trigger1[1]?1:0, "S Entry Trigger")
plot(stoch_crossdown?1:0, "Stoch Cross down")
plot(recent_high < previous_high?1:0, "Lower high")

if L_entry1
    strategy.entry("Long", strategy.long)

if S_entry1
    strategy.entry("Short", strategy.short)

strategy.exit("Exit Long", "Long", limit = L_PT, stop = L_SL, comment_profit = "Exit Long, PT hit", comment_loss = "Exit Long, SL hit")
strategy.exit("Exit Short", "Short", limit = S_PT, stop = S_SL, comment_profit = "Exit Short, PT hit", comment_loss = "Exit Short, SL hit")

//resetting triggers
L_entry_trigger1 := L_entry_trigger1[1] ? L_entry1 or ema_bear or S_entry1 ? false : true : L_entry_trigger1
S_entry_trigger1 := S_entry_trigger1[1] ? S_entry1 or ema_bull or L_entry1 ? false : true : S_entry_trigger1

//Trigger zones
bgcolor(L_entry_trigger1 ? color.new(color.green ,90) : na)
bgcolor(S_entry_trigger1 ? color.new(color.red,90) : na)