حرکت پذیر اوسط کراس اوور بریک آؤٹ حکمت عملی


تخلیق کی تاریخ: 2024-02-06 15:02:33 آخر میں ترمیم کریں: 2024-02-06 15:02:33
کاپی: 1 کلکس کی تعداد: 671
1
پر توجہ دیں
1617
پیروکار

حرکت پذیر اوسط کراس اوور بریک آؤٹ حکمت عملی

جائزہ

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

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

  1. طویل مدتی ، درمیانی مدتی اور قلیل مدتی تین حرکت پذیری اوسطوں کا حساب لگائیں۔ صارف اپنے آپ کو سیٹ کر سکتا ہے دورانیہ 20 ، 10 اور 5 دن پہلے سے طے شدہ ہے۔

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

  3. کثیر مارکیٹ میں ، اگر قیمت حالیہ N روٹ K لائن کے اندر سب سے زیادہ قیمت کو توڑ دیتی ہے تو ، زیادہ کام کریں۔ خالی مارکیٹ میں ، اگر قیمت حالیہ N روٹ K لائن کے اندر سب سے کم قیمت کو توڑ دیتی ہے تو ، خالی کرو۔ N بھی صارف کے لئے اپنی مرضی کے مطابق پیرامیٹرز ہیں۔

  4. پوزیشن میں داخل ہونے کے بعد ، اسٹاپ نقصان کا تعین کریں۔ کثیر مارکیٹ کا اسٹاپ حالیہ N روٹ K لائن کے اندر سب سے کم قیمت ہے ، اور خالی مارکیٹ کا اسٹاپ حالیہ N روٹ K لائن کے اندر سب سے زیادہ قیمت ہے۔

طاقت کا تجزیہ

اس حکمت عملی کے ساتھ مل کر چلنے والی اوسط اشارے اور K لائن گرافکس ، مارکیٹ کی تحریک کا بہتر اندازہ لگانے کے لئے.

اس حکمت عملی میں تین حرکت پذیر اوسط کا استعمال کیا گیا ہے تاکہ مارکیٹ کی حرکت کا اندازہ لگانے کے لئے ایک واحد حرکت پذیر اوسط جیسے اشارے کے مقابلے میں زیادہ قابل اعتماد ہو۔ اس کے علاوہ ، حالیہ N روٹ K لائن کی اعلی ترین قیمت یا کم سے کم قیمت کو توڑ کر پوزیشن میں داخل ہونا ، ایک عام توڑنے والی حکمت عملی ہے۔ مجموعی طور پر ، حکمت عملی کا نظریہ واضح ہے اور اس پر عمل درآمد کرنا آسان ہے۔

خطرے کا تجزیہ

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

  1. حرکت پذیر اوسط کی تین سمتوں میں غلطی کا اندازہ لگانے کا امکان۔ اگر درمیانی اور قلیل مدتی حرکت پذیر اوسط غلط سگنل کا سبب بنتا ہے تو ، اس سے غیر ضروری نقصان ہوسکتا ہے۔

  2. ٹائمنگ میں خرابی کا انتخاب غلط ہے ، آسانی سے پھنس جاتا ہے۔ ٹائمنگ میں خرابی کو مناسب طریقے سے بہتر بنایا جانا چاہئے۔

  3. سٹاپ نقصان کا فاصلہ بہت چھوٹا ہے، سٹاپ نقصان کا فاصلہ بڑھانے سے قیمتوں میں اضافہ ہوتا ہے۔

اصلاح کی سمت

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

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

  2. مختلف اقسام کے لئے موزوں بنانے کے لئے موزوں اوسط کی مدت کے پیرامیٹرز کو بہتر بنائیں۔

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

  4. ہائی فریکوئینسی ڈیٹا پر حکمت عملی کی افادیت کی جانچ پڑتال

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-01-30 00:00:00
end: 2024-02-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © hobbiecode

//@version=5
strategy("Cross Breakout - Hobbiecode", shorttitle="Cross - HOBBIE", overlay=true)

// User-defined input for moving averages
long_period = input(20, title="Long Period")
medium_period =  input(10, title = "Medium Period")
short_period = input(5, title="Short Period")
type_ma = input.string("SMA", title = "MA type", options = ["SMA", "EMA"])
candles_back = input(10, title = "Candles Back")
bars_valid = input(3, title = "Bars to Exit")

// Calculating moving averages
long_ma = 0.0
medium_ma = 0.0
short_ma = 0.0

if type_ma == "SMA"
    long_ma := ta.sma(close, long_period)
    medium_ma := ta.sma(close, medium_period)
    short_ma := ta.sma(close, short_period)
else
    long_ma := ta.ema(close, long_period)
    medium_ma := ta.ema(close, medium_period)
    short_ma := ta.ema(close, short_period)

// Plot moving averages
plot(long_ma, title="Long Moving Average", color=color.red)
plot(medium_ma, title = "Medium Moving Average", color = color.yellow)
plot(short_ma, title="Short Moving Average", color=color.green)

// Check last min/max
last_min = ta.lowest(candles_back)
last_max = ta.highest(candles_back)

// Strategy logic for crossing of moving averages
longCondition = short_ma > medium_ma and medium_ma > long_ma and high == last_max
shortCondition = short_ma < medium_ma and medium_ma < long_ma and low == last_min

longCondition_entry = longCondition and strategy.position_size == 0
shortCondition_entry = shortCondition and strategy.position_size == 0

// Check last min/max for operation
last_min_op = ta.lowest(candles_back)[1]
last_max_op = ta.highest(candles_back)[1]

// Plot lines
var line r1Line = na

// Entry orders
// if (longCondition)
//     from_line = chart.point.now(high)
//     to_line = chart.point.from_index(bar_index + candles_back, high)
//     r1Line := line.new(from_line, to_line, color = color.green, width = 2)

if longCondition_entry and ta.crossover(close,last_max_op)
    strategy.entry("Long", strategy.long)
    strategy.exit("Exit Long", from_entry="Long", stop=low)

// if (shortCondition)
//     from_line = chart.point.now(low)
//     to_line = chart.point.from_index(bar_index + candles_back, low)
//     r1Line := line.new(from_line, to_line, color = color.red, width = 2)

if shortCondition_entry and ta.crossunder(close,last_min_op)
    strategy.entry("Short", strategy.short)
    strategy.exit("Exit Short", from_entry="Short", stop=high)

if ta.barssince(longCondition_entry) >= bars_valid
    strategy.close("Long")

if ta.barssince(shortCondition_entry) >= bars_valid
    strategy.close("Short")