EMA کراس اوور ٹرینڈ اسٹریٹیجی کے بعد

مصنف:چاؤ ژانگ، تاریخ: 2023-12-27 16:31:15
ٹیگز:

img

جائزہ

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

حکمت عملی منطق

اس حکمت عملی کا بنیادی اشارے ای ایم اے ہے۔ ای ایم اے کا فارمولا یہ ہے:

EMA (t) = C (t) ×2/ (n+1) + EMA (t-1) × (n-1) / (n+1)

جہاں t موجودہ ٹِک ہے ، C ((t) موجودہ اختتامی قیمت ہے ، اور n پیرامیٹر N کی قیمت ہے۔ ای ایم اے ایک وزن والے عنصر کے ساتھ ایک حرکت پذیر اوسط تکنیک ہے ، جس سے حالیہ قیمتوں کو زیادہ وزن ملتا ہے ، اس طرح قیمتوں میں تازہ ترین تبدیلیوں پر تیزی سے رد عمل ظاہر ہوتا ہے۔

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

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

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

  1. منطق سادہ اور سمجھنے اور لاگو کرنے کے لئے آسان ہے؛
  2. قیمتوں کے رجحانات کا اندازہ کرنے کے لئے سادہ اور عملی EMA کا استعمال کریں ، بڑے رجحانات کو یاد کرنے سے گریز کریں۔
  3. ایڈجسٹ اور بہتر بنانے کے لئے چند پیرامیٹرز، بنیادی طور پر تیز رفتار اور سست EMAs پر انحصار؛
  4. خریدنے کے بعد اوپر کے رجحانات کی پیروی کرنے کے قابل؛
  5. فروخت کے بعد واپسی سے بچنے کے قابل، خطرات کو کم کرنے کے قابل؛
  6. کافی بیک ٹسٹ ڈیٹا اعلی وشوسنییتا کے ساتھ.

خطرے کا تجزیہ

اہم خطرات یہ ہیں:

  1. ای ایم اے سے غلط سگنل کا اعلی امکان۔
  2. جب مارکیٹ کی حد ہوتی ہے تو EMAs آسانی سے کراس اوور ہوتے ہیں۔
  3. جب اچانک واقعات کی وجہ سے سمت میں تیزی سے تبدیلی آتی ہے تو نقصان کو بروقت روکنے میں ناکام؛
  4. محدود اصلاح کی جگہ کہ اصل کارکردگی بیک ٹسٹ کے نتائج سے کم کارکردگی کا مظاہرہ کر سکتا ہے.

مذکورہ بالا خطرات کو کم کرنے کے لئے ، مندرجہ ذیل اصلاحی اقدامات اپنائے جاسکتے ہیں:

  1. غلط سگنل سے بچنے کے لئے فلٹر کے حالات کو دوسرے اشارے کے ساتھ شامل کرنا۔
  2. سگنل کی فریکوئنسی کو کم کرنے کے لئے پیرامیٹرز کو ایڈجسٹ کرنا؛
  3. ایک ہی نقصان کو کنٹرول کرنے کے لئے سٹاپ نقصان کی حکمت عملی کا اضافہ؛
  4. بہترین تلاش کرنے کے لئے مختلف وقت کی مدت کے پیرامیٹرز کی جانچ.

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

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

  1. متعدد ٹائم فریموں میں مرکب اشارے، مثال کے طور پر ہفتہ وار یا ماہانہ رجحانات کو یکجا کرنا؛
  2. غلط بریک آؤٹ سے بچنے کے لئے فلٹر کے حالات شامل کرنا، مثال کے طور پر حجم، بولنگر بینڈ وغیرہ؛
  3. ریئل ٹائم مارکیٹ کی تبدیلیوں کے مطابق پیرامیٹرز کی متحرک ایڈجسٹمنٹ؛
  4. ماڈل بنانے کے لیے دیگر اشارے شامل کرنا، جیسے گرڈ، رجسٹریشن الگورتھم۔

خلاصہ

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


/*backtest
start: 2022-12-20 00:00:00
end: 2023-12-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("EMA交叉策略by GPT",
     format = format.inherit,
     overlay = true,
     default_qty_type= strategy.percent_of_equity,
     default_qty_value = 100,
     currency = currency.USD,
     initial_capital = 1000000)


// 定義回測交易開始和結束時間的變數
start_time = input(title="開始時間", type=input.time, defval=timestamp("01 Jan 2020 00:00 +0000"))
end_time = input(title="結束時間", type=input.time, defval=timestamp("31 Dec 2050 23:59 +0000"))


// 判斷是否在回測交易時間範圍內
in_range = true


// Define input variables
fast_length = input(title="Fast EMA Length", type=input.integer, defval=5)
slow_length = input(title="Slow EMA Length", type=input.integer, defval=20)


// Define EMAs
fast_ema = ema(close, fast_length)
slow_ema = ema(close, slow_length)


// Define buy and sell signals
buy_signal = crossover(fast_ema, slow_ema)
sell_signal = crossunder(fast_ema, slow_ema)


// Buy signal
if in_range and buy_signal
    strategy.entry("Buy", strategy.long, when=in_range)
   
// Sell signal
if in_range and sell_signal
    strategy.close("Buy", when=sell_signal)

مزید