انکولی بوٹینکو اشارے طویل مختصر حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-01-04 16:09:30
ٹیگز:

img

جائزہ

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

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

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

اس کے علاوہ ، حکمت عملی میں ای ایم اے پروٹیکشن بیلٹ شامل ہے جس میں 21 دن ، 55 دن اور دیگر حرکت پذیر اوسط شامل ہیں۔ یہ طے کرتا ہے کہ موجودہ حالت ان حرکت پذیر اوسط کے چھانٹنے کے تعلقات کی بنیاد پر بیل مارکیٹ ، ریچھ مارکیٹ یا استحکام کی مارکیٹ ہے ، اور اس کے مطابق مختصر یا طویل کارروائیوں کو محدود کرتی ہے۔

Botvenko اشارے کے ساتھ ٹریڈنگ سگنلز کی شناخت اور چلتی اوسط کے ساتھ مارکیٹ کے مراحل کا فیصلہ کرتے ہوئے، غیر مناسب پوزیشن کے قیام سے بچا جا سکتا ہے جب مل کر استعمال کیا جاتا ہے.

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

اس حکمت عملی کا سب سے بڑا فائدہ یہ ہے کہ یہ خود بخود مارکیٹ کے طویل / مختصر رجحانات کی نشاندہی کرسکتا ہے۔ بوٹینکو اشارے دو وقت کی مدت میں قیمتوں کے مابین فرق کے لئے بہت حساس ہے اور کلیدی معاونت / مزاحمت کی سطح کو تیزی سے تلاش کرسکتا ہے۔ اسی وقت ، حرکت پذیر اوسط کی چھانٹ مؤثر طریقے سے فیصلہ کرسکتا ہے کہ آیا فی الحال طویل یا مختصر ہونا بہتر ہے۔

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

خطرے کا تجزیہ

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

پہلے خطرے سے نمٹنے کے لئے ، Botvenko اشارے کے پیرامیٹرز کو حساب کتاب کے دورانیے کو بڑھانے اور غیر ضروری تجارت کو کم کرنے کے لئے ایڈجسٹ کیا جاسکتا ہے۔ دوسرے خطرے کے ل more ، رجحان کی تشخیص کو زیادہ درست بنانے کے لئے مزید حرکت پذیر اوسط شامل کیے جاسکتے ہیں۔

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

اصلاح کی اہم سمتیں پیرامیٹر ٹوننگ اور فلٹر کے حالات کو شامل کرنا ہیں.

بوٹینکو اشارے کے ل the ، زیادہ سے زیادہ مجموعہ تلاش کرنے کے لئے مختلف مدت کے پیرامیٹرز کی کوشش کی جاسکتی ہے۔ حرکت پذیر اوسط کے ل more ، ان میں سے زیادہ کو مزید مکمل رجحان فیصلے کا نظام بنانے کے لئے شامل کیا جاسکتا ہے۔ اس کے علاوہ ، غلط سگنل کو فلٹر کرنے کے لئے اتار چڑھاؤ کے اشارے ، تجارتی حجم کے اشارے وغیرہ بھی متعارف کروائے جاسکتے ہیں۔

پیرامیٹرز اور فلٹر حالات کی جامع ایڈجسٹمنٹ کے ذریعے، حکمت عملی کے استحکام اور منافع کو مزید بڑھا سکتے ہیں.

خلاصہ

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


/*backtest
start: 2023-12-27 00:00:00
end: 2024-01-03 00:00:00
period: 1m
basePeriod: 1m
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/
// © boftei

//@version=5

strategy("Boftei's Strategy", overlay=false, pyramiding=1, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, margin_long = 100, margin_short = 100, slippage=0, commission_type=strategy.commission.percent, commission_value = 0, initial_capital = 40, precision = 6)
strat_dir_input = input.string("all", "strategy direction", options=["long", "short", "all"])
strat_dir_value = strat_dir_input == "long" ? strategy.direction.long : strat_dir_input == "short" ? strategy.direction.short : strategy.direction.all
strategy.risk.allow_entry_in(strat_dir_value)
//////////////////////////////////////////////////////////////////////
//DATA
testStartYear = input(2005, "Backtest Start Year")
testStartMonth = input(7, "Backtest Start Month")
testStartDay = input(16, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
//Stop date if you want to use a specific range of dates
testStopYear = input(2030, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)


testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false
//////////////////////////////////////////////////////////////////////
sell = input.float(0.0065, "sell level")
buy = input.float(0, "buy level")
long1 = input.float(-0.493, "long retry - too low")
long2 = input.float(2, "long close up")
long3 = input.float(-1.5, "long close down")
short1 = input.float(1.26, "short retry - too high")
short2 = input.float(-5, "dead - close the short")
///< botvenko script
nn = input(60, "Histogram Period")
float x = 0
float z = 0
float k = 0



y = math.log(close[0]) - math.log(close[nn])
if y>0
    x := y
else
    k := y
//---------------------------------------------
        
plot(y > 0 ? x: 0, color = color.green, linewidth = 4)
plot(y <= 0 ? k: 0, color = color.maroon, linewidth = 4)
plot(y, color = color.yellow, linewidth = 1)

co = ta.crossover(y, buy)
cu = ta.crossunder(y, sell)
retry_long = ta.crossunder(y, long1)
deadline_long_up = ta.crossover(y, long2)
deadline_long_down = ta.crossunder(y, long3)
retry_short = ta.crossover(y, short1)
deadline_short = ta.crossunder(y, short2)


hline(buy, title='buy', color=color.green, linestyle=hline.style_dotted, linewidth=2)
hline(0, title='zero', color=color.white, linestyle=hline.style_dotted, linewidth=1)
hline(sell, title='sell', color=color.red, linestyle=hline.style_dotted, linewidth=2)
hline(long1, title='long retry', color=color.blue, linestyle=hline.style_dotted, linewidth=2)
hline(long2, title='overbought', color=color.teal, linestyle=hline.style_dotted, linewidth=2)
hline(long3, title='oversold', color=color.maroon, linestyle=hline.style_dotted, linewidth=2)
hline(short1, title='short retry', color=color.purple, linestyle=hline.style_dotted, linewidth=2)
hline(short2, title='too low to short - an asset may die', color=color.navy, linestyle=hline.style_dotted, linewidth=2)


////////////////////////////////////////////////////////////EMAprotectionBLOCK
ema_21 = ta.ema(close, 21)
ema_55 = ta.ema(close, 55)
ema_89 = ta.ema(close, 89)
ema_144 = ta.ema(close, 144)
//ema_233 = ta.ema(close, 233)
// ema_377 = ta.ema(close, 377)

long_st = ema_21>ema_55 and ema_55>ema_89 and ema_89>ema_144 //and ema_144>ema_233 and ema_233>ema_377
short_st = ema_21<ema_55 and ema_55<ema_89 and ema_89<ema_144 //and ema_144<ema_233 and ema_233<ema_377 

g_v = long_st == true?3:0
r_v = short_st == true?-2:0
y_v = long_st != true and short_st != true?2:0

plot(math.log(ema_21), color = color.new(#ffaf5e, 50))
plot(math.log(ema_55), color = color.new(#b9ff5e, 50))
plot(math.log(ema_89), color = color.new(#5eff81, 50))
plot(math.log(ema_144), color = color.new(#5effe4, 50))
//plot(math.log(ema_233), color = color.new(#5e9fff, 50))
//plot(math.log(ema_377), color = color.new(#af5eff, 50))

plot(long_st == true?3:0, color = color.new(color.green, 65), linewidth = 5)
plot(short_st == true?-2:0, color = color.new(color.red, 65), linewidth = 5)
plot(long_st != true and short_st != true?2:0, color = color.new(color.yellow, 65), linewidth = 5)
////////////////////////////////////////////////////////////EMAprotectionBLOCK




if (co and testPeriod() and (g_v == 3 or y_v == 2))
    strategy.close("OH BRO", comment = "EXIT-SHORT")
    strategy.close("OH DUDE", comment = "EXIT-SHORT")
	strategy.entry("OH DAMN", strategy.long, comment="ENTER-LONG 'co'")
if (retry_long and testPeriod() and (g_v == 3 or y_v == 2))
    strategy.close("OH DAMN", comment = "EXIT-LONG")
    strategy.entry("OH BRUH", strategy.long, comment="ENTER-LONG 'retry_long'")
	
if (cu and testPeriod() and (r_v == -2 or y_v == 2))
    strategy.close("OH DAMN", comment = "EXIT-LONG")
    strategy.close("OH BRUH", comment = "EXIT-LONG")
	strategy.entry("OH BRO", strategy.short, comment="ENTER-SHORT 'cu'")
if (retry_short and testPeriod() and (r_v == -2 or y_v == 2))
    strategy.close("OH BRO", comment = "EXIT-SHORT")
    strategy.entry("OH DUDE", strategy.short, comment="ENTER-SHORT 'retry_short'")
	
    
if (deadline_long_up and testPeriod() or r_v == -2 and testPeriod())
    strategy.close("OH DAMN", comment = "EXIT-LONG 'deadline_long_up'")
if (deadline_long_down and testPeriod())
    strategy.close("OH DAMN", comment = "EXIT-LONG 'deadline_long_down'")
if (deadline_short and testPeriod() or g_v == 3 and testPeriod())
    strategy.close("OH BRO", comment = "EXIT-SHORT 'deadline_short'")
    // (you can use strategy.close_all(comment = "close all entries") here)



مزید