فائبر انڈیکس کی بنیاد پر اسٹاپ لمیٹ کی حکمت عملی کو منتقل کرنا


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

فائبر انڈیکس کی بنیاد پر اسٹاپ لمیٹ کی حکمت عملی کو منتقل کرنا

جائزہ

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

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

یہ حکمت عملی بنیادی طور پر فلوٹ اشارے کی بنیاد پر قیمتوں کا تعین کرتی ہے۔ فلوٹ اشارے مارکیٹ کی ممکنہ حمایت اور مزاحمت کی عکاسی کرسکتے ہیں۔ یہ حکمت عملی فلوٹ اشارے کی مختلف سطحوں کو روکنے اور روکنے کی قیمتوں کے طور پر استعمال کرتی ہے۔

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

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

طاقت کا تجزیہ

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

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

  2. زلزلے کے حالات میں نقصان کو کم کرنے کے قابل۔ جب قیمت ایک بار پھر نیچے کی حد تک پہنچ جاتی ہے تو ، نقصان کو بروقت روک دیا جاتا ہے ، تاکہ زلزلے میں پھنسنے سے بچا جاسکے۔

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

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

خطرے کا تجزیہ

اس حکمت عملی میں کچھ خطرات بھی ہیں، جن میں سے کچھ درج ذیل ہیں:

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

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

  3. ذخیرہ اندوزی کی تعداد اور رقم کی کوئی حد نہیں ہے۔ کئی بار ذخیرہ اندوزی سے نقصان میں مزید اضافہ ہوسکتا ہے۔

اس کا حل کیا ہے؟

  1. آپ کو یہ بھی معلوم ہونا چاہئے کہ آپ کے کاروبار میں کیا ہو رہا ہے.
  2. اس کے علاوہ ، آپ کو دستی طور پر اس کی نگرانی کرنے کی ضرورت ہوگی ، اور اگر ضروری ہو تو ، آپ کو اس پر پابندی عائد کرنا ہوگی۔
  3. جمع کرنے کی تعداد اور رقم کی حد طے کریں۔

اصلاح کی سمت

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

  1. دوسرے اشارے کے مجموعے کا استعمال کرتے ہوئے داخلے کی تصدیق کریں۔ داخلے کی شرائط میں ای ایم اے ، ایم اے سی ڈی وغیرہ اشارے کی تصدیق شامل کی جاسکتی ہے ، تاکہ زلزلے کے حالات میں اس کا شکار نہ ہوں۔

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

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

  4. مشین لرننگ الگورتھم کے ساتھ۔ مثال کے طور پر ایل ایس ٹی ایم جیسے الگورتھم کا استعمال قیمتوں کے ممکنہ رجحانات اور معاون مزاحمت کی پیش گوئی کرنے کے لئے۔

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2024-01-06 00:00:00
end: 2024-02-05 00:00:00
period: 1h
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/
// © CryptoRox

//@version=4
//Paste the line below in your alerts to run the built-in commands.
//{{strategy.order.alert_message}}
strategy(title="Fibs limit only", shorttitle="Strategy", overlay=true, precision=8, pyramiding=1000, commission_type=strategy.commission.percent, commission_value=0.04)

//Settings 
testing = input(false, "Live")
//Use epochconverter or something similar to get the current timestamp.
starttime = input(1600976975, "Start Timestamp") * 1000
//Wait XX seconds from that timestamp before the strategy starts looking for an entry.
seconds = input(60, "Start Delay") * 1000
testPeriod = true


leverage = input(1, "Leverage")
tp = input(1.0, "Take Profit %") / leverage
dca = input(-1.0, "DCA when < %") / leverage *-1
fibEntry = input("1", "Entry Level", options=["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"])

//Strategy Calls
equity = strategy.equity
avg = strategy.position_avg_price
symbol = syminfo.tickerid
openTrades = strategy.opentrades
closedTrades = strategy.closedtrades
size = strategy.position_size

//Fibs
lentt = input(60, "Pivot Length")
h = highest(lentt)
h1 = dev(h, lentt) ? na : h
hpivot = fixnan(h1)
l = lowest(lentt)
l1 = dev(l, lentt) ? na : l
lpivot = fixnan(l1)
z = 400
p_offset= 2
transp = 60
a=(lowest(z)+highest(z))/2
b=lowest(z)
c=highest(z)

fib0 = (((hpivot - lpivot)) + lpivot)
fib1 = (((hpivot - lpivot)*.21) + lpivot)
fib2 = (((hpivot - lpivot)*.3) + lpivot)
fib3 = (((hpivot - lpivot)*.5) + lpivot)
fib4 = (((hpivot - lpivot)*.62) + lpivot)
fib5 = (((hpivot - lpivot)*.7) + lpivot)
fib6 = (((hpivot - lpivot)* 1.00) + lpivot)
fib7 = (((hpivot - lpivot)* 1.27) + lpivot)
fib8 = (((hpivot - lpivot)* 2) + lpivot)
fib9 = (((hpivot - lpivot)* -.27) + lpivot)
fib10 = (((hpivot - lpivot)* -1) + lpivot)

notna = nz(fib10[60])
entry = 0.0
if fibEntry == "1"
    entry := fib10
if fibEntry == "2"
    entry := fib9
if fibEntry == "3"
    entry := fib0
if fibEntry == "4"
    entry := fib1
if fibEntry == "5"
    entry := fib2
if fibEntry == "6"
    entry := fib3
if fibEntry == "7"
    entry := fib4
if fibEntry == "8"
    entry := fib5
if fibEntry == "9"
    entry := fib6
if fibEntry == "10"
    entry := fib7
profit = avg+avg*(tp/100)
pause = 0
pause := nz(pause[1])
paused = time < pause

fill = 0.0
fill := nz(fill[1])
count = 0.0
count := nz(fill[1])

filled = count > 0 ? entry > fill-fill/100*dca : 0
signal = testPeriod and notna and not paused and not filled ? 1 : 0

neworder = crossover(signal, signal[1])
moveorder = entry != entry[1] and signal and not neworder ? true : false
cancelorder = crossunder(signal, signal[1]) and not paused
filledorder = crossunder(low[1], entry[1]) and signal[1]

last_profit = 0.0
last_profit := nz(last_profit[1])

if neworder and signal
    strategy.order("New", 1, 0.0001, alert_message='New Order|e=binancefuturestestnet s=btcusdt b=long q=0.0011 fp=' + tostring(entry)) 
if moveorder
    strategy.order("Move", 1, 0.0001, alert_message='Move Order|e=binancefuturestestnet s=btcusdt b=long c=order|e=binancefuturestestnet s=btcusdt b=long q=0.0011 fp=' + tostring(entry))
if filledorder and size < 1
    fill := entry
    count := count+1 
    pause := time + 60000
    p = close+close*(tp/100)
    strategy.entry("Filled", 1, 1,  alert_message='Long Filled|e=binancefuturestestnet s=btcusdt b=short c=order|delay=1|e=binancefuturestestnet s=btcusdt b=long c=position q=100% ro=1 fp=' + tostring(p))
if filledorder and size >= 1
    fill := entry
    count := count+1 
    pause := time + 60000
    strategy.entry("Filled", 1, 1,  alert_message='Long Filled|e=binancefuturestestnet s=btcusdt b=short c=order|delay=1|e=binancefuturestestnet s=btcusdt b=long c=position q=100% ro=1 fp=' + tostring(profit))

if cancelorder and not filledorder
    pause := time + 60000
    strategy.order("Cancel", 1, 0.0001,  alert_message='Cancel Order|e=binancefuturestestnet s=btcusdt b=long c=order')

if filledorder
    last_profit := profit

closeit = crossover(high, profit) and size >= 1
if closeit
    strategy.entry("Close ALL", 0, 0, alert_message='Profit')
    count := 0
    fill := 0.0
    last_profit := 0.0
    
//Plots
bottom = signal ? color.green : filled ? color.red : color.white
plot(entry, "Entry", bottom)