
ایک متحرک اوسط لائن کراسنگ ٹرینڈ ٹریکنگ حکمت عملی ایک مقداری تجارتی حکمت عملی ہے جو مارکیٹ کے رجحانات کی پیروی کرتی ہے۔ یہ حکمت عملی تیزی سے چلنے والی اوسط اور آہستہ آہستہ چلنے والی اوسط کی حساب کتاب کرکے اور جب وہ کراسنگ ہوتی ہے تو ٹریڈنگ سگنل پیدا کرکے مارکیٹ کے رجحانات کے موڑ کو پکڑنے کے لئے استعمال ہوتی ہے۔
اس حکمت عملی کا بنیادی اصول یہ ہے کہ مارکیٹ کے رجحانات کا فیصلہ کرنے کے لئے مختلف پیرامیٹرز کے ساتھ انڈیکس منتقل اوسط ((EMA) کا استعمال کیا جائے۔ حکمت عملی میں ایک تیز EMA اور ایک آہستہ EMA کی وضاحت کی گئی ہے۔ جب تیز EMA نیچے سے سست EMA کو پار کرتا ہے تو ، مارکیٹ کا رجحان بولڈ ہوتا ہے۔ جب تیز EMA اوپر سے نیچے سے سست EMA کو پار کرتا ہے تو ، مارکیٹ کا رجحان بیئر ہوتا ہے۔
جب پہنا جاتا ہے تو ، حکمت عملی ایک سے زیادہ اور جب پہنا جاتا ہے تو ، حکمت عملی خالی ہوتی ہے۔ حکمت عملی اس پوزیشن پر اس وقت تک برقرار رہتی ہے جب تک کہ اسٹاپ اسٹاپ نقصان کی کارروائی نہ ہو یا دوبارہ کراس ریورس سگنل نہ ہو۔
یہ حکمت عملی مندرجہ ذیل فوائد رکھتی ہے:
اس حکمت عملی کے کچھ خطرات بھی ہیں:
خطرے کو کم کرنے کے لئے ، رجحان کی قسم کا اندازہ لگانے کے لئے دوسرے اشارے کے ساتھ مل کر غور کیا جاسکتا ہے ، یا اسٹاپ نقصان کی شرح کو کچھ زیادہ نرمی سے ترتیب دیا جاسکتا ہے۔
اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
متحرک اوسط لائن کراس رجحان ٹریکنگ حکمت عملی مجموعی طور پر ایک سادہ عملی رجحان ٹریڈنگ حکمت عملی ہے۔ اس حکمت عملی کا بنیادی نظریہ واضح ، عملی طور پر آسان ہے ، اور اس کے ساتھ ساتھ کچھ اصلاح کی گنجائش بھی ہے۔ پیرامیٹرز کی ایڈجسٹمنٹ ، کثیر دورانیہ کے فیصلے ، متحرک اسٹاپ نقصان وغیرہ کے ذریعہ ، حکمت عملی کی استحکام اور منافع کی سطح کو مستقل طور پر بہتر بنایا جاسکتا ہے۔
/*backtest
start: 2024-01-28 00:00:00
end: 2024-02-04 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy('Zhukov trade', overlay=true, calc_on_every_tick=true, currency=currency.USD)
// INPUT:
// Options to enter fast and slow Exponential Moving Average (EMA) values
emaFast = input.int(title='Fast EMA', defval=10, minval=1, maxval=9999)
emaSlow = input.int(title='Slow EMA', defval=20, minval=1, maxval=9999)
// Option to select trade directions
tradeDirection = input.string(title='Trade Direction', options=['Long', 'Short', 'Both'], defval='Both')
// Options that configure the backtest date range
startDate = input(title='Start Date', defval=timestamp('01 Jan 2023 00:00'))
endDate = input(title='End Date', defval=timestamp('31 Dec 2030 23:59'))
// Set take profit and stop loss percentages
take_profit_percent = input(1.0, title ="Take Profit Percent") / 100.0
stop_loss_percent = input(1.0, title ="Stop Loss Percent") / 100.0
// CALCULATIONS:
// Use the built-in function to calculate two EMA lines
fastEMA = ta.ema(close, emaFast)
slowEMA = ta.ema(close, emaSlow)
emapos = ta.ema(close, 200)
// PLOT:
// Draw the EMA lines on the chart
plot(series=fastEMA, color=color.new(color.orange, 0), linewidth=2)
plot(series=slowEMA, color=color.new(color.blue, 0), linewidth=2)
plot(series=emapos, color=color.new(color.red, 0), linewidth=2)
// CONDITIONS:
// Check if the close time of the current bar falls inside the date range
inDateRange = true
// Translate input into trading conditions
longOK = tradeDirection == 'Long' or tradeDirection == 'Both'
shortOK = tradeDirection == 'Short' or tradeDirection == 'Both'
// Decide if we should go long or short using the built-in functions
longCondition = ta.crossover(fastEMA, slowEMA) and inDateRange
shortCondition = ta.crossunder(fastEMA, slowEMA) and inDateRange
// ORDERS:
// Submit entry (or reverse) orders
if longCondition and longOK
strategy.entry(id='long', direction=strategy.long)
if shortCondition and shortOK
strategy.entry(id='short', direction=strategy.short)
// Exit orders
if strategy.position_size > 0 and longOK
strategy.exit(id='exit long', from_entry='long', limit=strategy.position_avg_price * (1 + take_profit_percent), stop=strategy.position_avg_price * (1 - stop_loss_percent))
if strategy.position_size < 0 and shortOK
strategy.exit(id='exit short', from_entry='short', limit=strategy.position_avg_price * (1 - take_profit_percent), stop=strategy.position_avg_price * (1 + stop_loss_percent))