
یہ حکمت عملی خرید و فروخت کے سگنل دینے کے لئے دو مختلف پیرامیٹرز کی ترتیب والی متحرک اوسط کی کراسنگ پر مبنی ہے۔ خرید کا سگنل اس وقت دیا جاتا ہے جب ایک مختصر مدت کی متحرک اوسط نیچے کی طرف سے ایک طویل مدت کی متحرک اوسط کو توڑ دیتی ہے۔ فروخت کا سگنل اس وقت دیا جاتا ہے جب ایک مختصر مدت کی متحرک اوسط اوپر کی طرف سے نیچے کی طرف سے ایک طویل مدت کی متحرک اوسط کو توڑ دیتی ہے۔
یہ حکمت عملی پائن اسکرپٹ زبان کا استعمال کرتے ہوئے لکھی گئی ہے۔ اس میں پہلے ان پٹ کے ذریعہ دو منتقل اوسط کی قسم ، لمبائی اور قیمت کا منبع متعین کیا گیا ہے ، جس کا نام پی 1 اور پی 2 ہے۔ پی 1 مختصر مدت کی اوسط ہے ، پی 2 طویل مدت کی اوسط ہے۔
کراس اوور اور کراس انڈر فنکشن کے ذریعہ دو مساوی لائنوں کے کراسنگ کا فیصلہ کریں۔ جب پی 1 نیچے کی طرف سے پی 2 کو توڑتا ہے تو ، خریدنے کا اشارہ ہوتا ہے۔ جب پی 1 اوپر کی طرف سے پی 2 کو توڑتا ہے تو ، فروخت کا اشارہ ہوتا ہے۔
تجارت کو نافذ کرنے کے لئے ، حکمت عملی نے حکمت عملی.انٹری فنکشن کے ذریعہ سگنل جاری کرتے وقت ایک کثیر یا خالی پوزیشن قائم کی۔ اگر مختصر صرف پیرامیٹرز کو چالو کیا گیا ہے تو ، صرف تجارت سگنل فروخت کرتی ہے۔
یہ حکمت عملی مندرجہ ذیل فوائد رکھتی ہے:
اس حکمت عملی کے کچھ خطرات بھی ہیں:
اوسط لائن کی لمبائی کو ایڈجسٹ کرکے ، فلٹرنگ شرائط متعارف کرانے وغیرہ کے ذریعہ غیر موثر سگنل کو کم کیا جاسکتا ہے۔ اس کے علاوہ ، رجحان کے اشارے کے ساتھ مل کر بڑے بازاروں کی حرکت کا اندازہ لگایا جاسکتا ہے۔
اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
حجم وزن اوسط یا عام قیمت کو قیمت کے ذریعہ متعارف کرانے سے کراس سگنل کی وشوسنییتا میں اضافہ ہوتا ہے
توثیق کی مدت میں اضافہ کریں تاکہ قلیل مدتی کراسنگ غلطیوں سے بچا جاسکے
اے ٹی آر اسٹاپ کے ساتھ ، مارکیٹ میں اتار چڑھاو کی حد کے مطابق زیادہ سے زیادہ نقصانات کا تعین
مطلوبہ پیرامیٹرز کا بہترین مجموعہ تلاش کرنے کے لئے منحنی فٹ اپ کو بہتر بنانے کے پیرامیٹرز کا استعمال کریں
بڑے دورانیہ کے رجحانات کے مطابق ٹریڈنگ سگنل پر غور کریں
یہ دو یکساں کراسنگ حکمت عملی مجموعی طور پر سمجھنے اور عمل کرنے میں آسان ہے ، دو یکساں لائنوں کے کراسنگ کے ذریعہ تجارتی سگنل تشکیل دیتا ہے ، اور یہ انتہائی حسب ضرورت ہے۔ لیکن یہ ہنگامہ خیز حالات میں زیادہ غیر موثر سگنل بھی پیدا کرسکتا ہے۔ پیرامیٹرز کی اصلاح اور قواعد کی اصلاح کے ذریعہ خطرے کو کم کیا جاسکتا ہے ، جس میں زیادہ سے زیادہ اصلاح کی گنجائش ہے ، اور یہ مزید تحقیق کے قابل ہے۔
/*backtest
start: 2022-11-20 00:00:00
end: 2023-11-26 00:00:00
period: 1d
basePeriod: 1h
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/
// © RafaelPiccolo
//@version=4
strategy("Double MA Cross", overlay=true)
type1 = input("SMA", "MA Type 1", options=["SMA", "EMA", "WMA", "HMA", "VWMA", "RMA", "TEMA"])
len1 = input(10, minval=1, title="Length 1")
src1 = input(close, "Source 1", type=input.source)
type2 = input("SMA", "MA Type 2", options=["SMA", "EMA", "WMA", "HMA", "VWMA", "RMA", "TEMA"])
len2 = input(50, minval=2, title="Length 2")
src2 = input(close, "Source 2", type=input.source)
shortOnly = input(false, "Short only")
tema(src, len)=>
ema1 = ema(src, len)
ema2 = ema(ema1, len)
ema3 = ema(ema2, len)
return = 3 * (ema1 - ema2) + ema3
getPoint(type, len, src)=>
return = type == "SMA" ? sma(src, len) : type == "EMA" ? ema(src, len) : type == "WMA" ? wma(src, len) : type == "HMA" ? hma(src, len) : type == "VWMA" ? vwma(src, len) : type == "RMA" ? rma(src, len) : tema(src, len)
p1 = getPoint(type1, len1, src1)
p2 = getPoint(type2, len2, src2)
shortCondition = crossunder(p1, p2)
longCondition = crossover(p1, p2)
if (shortCondition)
strategy.entry("Short", strategy.short)
if (longCondition)
if (shortOnly)
strategy.close("Short")
else
strategy.entry("Long", strategy.long)
plot(p1, "MA 1", p1 < p2 ? color.red : color.green)
plot(p2, "MA 2", color.blue)