طویل اور مختصر دوہری پٹریوں پر مبنی منافع لینے کی حکمت عملی


تخلیق کی تاریخ: 2024-01-15 14:56:03 آخر میں ترمیم کریں: 2024-01-15 14:56:03
کاپی: 1 کلکس کی تعداد: 626
1
پر توجہ دیں
1617
پیروکار

طویل اور مختصر دوہری پٹریوں پر مبنی منافع لینے کی حکمت عملی

Myo_LS_D کی پیمائش کی حکمت عملی

جائزہ

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

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

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

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

  2. کثیر ماڈیولز نئے اعلی ، کم اور لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی لمبی

  3. اسٹاپ ٹریکنگ ماڈیول دو مختلف ادوار کی SMA اوسط لائن کا استعمال کرتے ہوئے قیمت میں تبدیلی کی اصل وقت میں پیروی کرتا ہے۔ جب قیمت اوسط سے نیچے آجاتی ہے تو پوزیشن کو بند کردیں۔ اس طرح کی اصل وقت کی ٹریکنگ سے رجحانات میں زیادہ سے زیادہ منافع حاصل کیا جاسکتا ہے۔

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

طاقت کا تجزیہ

اس حکمت عملی کا سب سے بڑا فائدہ یہ ہے کہ اس میں بہت سے خالی علیحدہ اسٹورز بنائے گئے ہیں، اور اس کی روک تھام کی حکمت عملی کی پیروی کی جاتی ہے. خاص طور پر:

  1. کثیر خلائی علیحدگی سے ایک طرفہ رجحانات سے فائدہ اٹھانے کے مواقع کو زیادہ سے زیادہ کیا جاسکتا ہے۔

  2. ٹریکنگ اسٹاپس ریئل ٹائم ایڈجسٹمنٹ کے ذریعہ اعلی منافع کی شرح حاصل کرسکتے ہیں۔ روایتی اسٹاپس کے مقابلے میں ، آمدنی میں نمایاں اضافہ ہوتا ہے۔

  3. اسٹاپ نقصان کو بڑھانا زلزلے کے امکانات کو کم کرتا ہے اور نقصان کے خطرے کو کم کرتا ہے۔

خطرات اور حل

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

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

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

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

اصلاح کی سمت

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

  1. رجحانات کے فیصلے کے ماڈیول کو بہتر بنانے اور فیصلے کی درستگی کو بہتر بنانے کے لئے۔ مزید اشارے جیسے MACD وغیرہ کو یکجا کرنے پر غور کیا جاسکتا ہے۔

  2. ٹریکنگ اسٹاپس کو ایڈجسٹ کریں تاکہ منافع کی جگہ کو مزید بڑھایا جاسکے۔ مثال کے طور پر اسٹاپس لائن کو تناسب کے مطابق منتقل کیا جاسکتا ہے۔

  3. اسٹاپ نقصان کی حد کو بڑھانا یا اسٹاپ نقصان کو کم کرنے پر غور کرنا تاکہ زلزلے سے بچنے کے امکانات کو مزید کم کیا جاسکے۔

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-12-15 00:00:00
end: 2024-01-14 00:00:00
period: 4h
basePeriod: 15m
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/
// © agresiynin

//@version=5
// ©Myo_Pionex
strategy(
 title                  =   "Myo_simple strategy_LS_D",
 shorttitle             =   "Myo_LS_D",
 overlay                =   true )


// var
lowest_price = ta.lowest(low, 200)
highest_price = ta.highest(high, 200)
min_800 = ta.lowest(low, 800)
max_800 = ta.highest(high, 800)
tp_target_L = min_800 + (max_800 - min_800) * math.rphi
tp_target_S = max_800 - (max_800 - min_800) * math.rphi
sl_length_L = input.int(100, "做多的止損長度", minval = 50, maxval = 300, step = 50)
sl_length_S = input.int(100, "做空的止損長度", minval = 50, maxval = 300, step = 50)
sl_L = lowest_price * (1 - 0.005)
sl_S = highest_price * (1 + 0.005)
rrr_L = tp_target_L - sl_L / sl_L
rrr_S = ta.lowest(low, 800) + ta.highest(high, 800) - ta.lowest(low, 800) * math.rphi / ta.highest(high, 200) + 0.005 * ta.highest(high, 200) - ta.lowest(low, 200) - 0.005 * ta.lowest(low, 200)
smalen1 = input.int(10, "做多追蹤止盈SMA長度1", options = [5, 10, 20, 40, 60, 80])
smalen2 = input.int(20, "做多追蹤止盈SMA長度2", options = [5, 10, 20, 40, 60, 80])
smalen1_S = input.int(5, "做空追蹤止盈SMA長度1", options = [5, 10, 20, 40, 60, 80])
smalen2_S = input.int(10, "做空追蹤止盈SMA長度2", options = [5, 10, 20, 40, 60, 80])
TrendLength_L = input.int(400, "做多趨勢線", options = [100, 200, 300, 400, 500])
TrendLength_S = input.int(300, "做空趨勢線", options = [100, 200, 300, 400, 500])
SMA1 = ta.sma(close, smalen1)
SMA2 = ta.sma(close, smalen2)
SMA1_S = ta.sma(close, smalen1_S)
SMA2_S = ta.sma(close, smalen2_S)
shortlength = input.int(20, "短期均價K線數量")
midlength = input.int(60, "中期均價K線數量")
longlength = input.int(120, "長期均價K線數量")
ShortAvg = math.sum(close, shortlength)/shortlength
MidAvg = math.sum(close, midlength)/midlength
LongAvg = math.sum(close, longlength)/longlength

// Trend
basePeriods = input.int(8, minval=1, title="趨勢基準線")
basePeriods_Short = input.int(26, "做空基準線")
donchian(len) => math.avg(ta.lowest(len), ta.highest(len))
baseLine = donchian(basePeriods)
baseLine_Short = donchian(basePeriods_Short)
trend = request.security(syminfo.tickerid, "D", baseLine)
isUptrend = false
isDowntrend = false
baseLine_D = request.security(syminfo.tickerid, "D", baseLine)
plot(baseLine_D, color=#B71C1C, title="趨勢基準線")
if close[0] > baseLine_D
    isUptrend := true
if close[0] < baseLine_Short
    isDowntrend := true
// Long
// Condition
// entry
con_a = low > lowest_price ? 1 : 0
con_b = high > highest_price ? 1 : 0
con_c = close[0] > ta.sma(close, TrendLength_L) ? 1 : 0
con_d = isUptrend ? 1 : 0
con_e = rrr_L > 3 ? 1 : 0
con_a1 = close[0] > ShortAvg[shortlength] ? 1 : 0
con_b1 = close[0] > MidAvg[midlength] ? 1 : 0

// close
con_f = ta.crossunder(close, SMA1) and ta.crossunder(close, SMA2) ? 1 : 0
con_g = close < ta.lowest(low, sl_length_L)[1] * (1 - 0.005) ? 1 : 0

// exit
con_h = tp_target_L

// Main calculation
LongOpen = false
AddPosition_L = false

if con_a + con_b + con_c + con_e + con_a1 + con_b1 >= 4 and con_d >= 1
    LongOpen := true
// Short
// Condition
// entry
con_1 = high < highest_price ? 1 : 0
con_2 = low < lowest_price ? 1 : 0
con_3 = close[0] < ta.sma(close, TrendLength_S) ? 1 : 0
con_4 = isDowntrend ? 1 : 0
con_5 = rrr_S > 3 ? 1 : 0
con_11 = close[0] < ShortAvg[shortlength] ? 1 : 0
con_12 = close[0] < MidAvg[midlength] ? 1 : 0

// close
con_6 = ta.crossover(close, SMA1_S) and ta.crossover(close, SMA2_S) ? 1 : 0
con_7 = close > ta.highest(high, sl_length_S)[1] * (1 + 0.005) ? 1 : 0

// exit
con_8 = tp_target_S

// Main calculation
ShortOpen = false
AddPosition_S = false

if con_1 + con_2 + con_3 + con_4 + con_5 + con_11 + con_12 >= 5
    ShortOpen := true

//
// execute
//
strategy.initial_capital = 50000
if strategy.position_size == 0
    if LongOpen
        strategy.entry("Long Open" , strategy.long , comment= "Long Open " + str.tostring(close[0]), qty=strategy.initial_capital/close[0])

if strategy.position_size > 0
    if (con_f > 0 or con_g > 0 or ShortOpen) and close <= baseLine_D
        strategy.close_all(comment="Close Long " + str.tostring(close[0]))

if strategy.position_size == 0
    if ShortOpen
        strategy.entry("Short Open" , strategy.short , comment= "Short Open " + str.tostring(close[0]), qty=strategy.initial_capital/close[0])

if strategy.position_size < 0
    if (con_6 > 0 or con_7 > 0 or LongOpen) and close >= baseLine_D
        strategy.close_all(comment="Close Short " + str.tostring(close[0]))


plot(ta.sma(close, TrendLength_L), color=#e5c212, title="LTradeTrend")
plot(ta.sma(close, TrendLength_S), color=#1275e5, title="STradeTrend")
plot(SMA1, "SMA1", color = color.lime, linewidth = 2)
plot(SMA2, "SMA2", color = color.rgb(255, 0, 255), linewidth = 2)