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


تخلیق کی تاریخ: 2023-12-01 13:50:02 آخر میں ترمیم کریں: 2023-12-01 13:50:02
کاپی: 0 کلکس کی تعداد: 767
1
پر توجہ دیں
1619
پیروکار

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

جائزہ

اس حکمت عملی میں بٹ کوائن کی قیمتوں کے مختلف ٹائم فریموں کے ساتھ مل کر مقداری اشارے کی شناخت کی گئی ہے۔ اس حکمت عملی میں 5 منٹ کی ٹائم فریم استعمال کی گئی ہے۔

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

  1. RSI اشارے کی بنیاد پر دن کی لکیر ٹائم فریم حساب کتاب ، تبادلوں کی مقدار کو وزن میں لے کر حساب کتاب ، جعلی بریک کو فلٹر کریں۔
  2. ای ایم اے سست کرنے کے لئے سورج کی لکیری RSI اشارے کا استعمال کرتے ہوئے ، ایک مقداری طول و عرض اشارے کی تعمیر کریں۔
  3. 5 منٹ کے ٹائم فریم میں ٹریڈنگ سگنل لکیری رجعت اشارے اور ایچ ایم اے اشارے کے ذریعہ تیار کیے جاتے ہیں۔
  4. حکمت عملیوں کو مختلف ٹائم فریموں کے مابین جوڑنے کے لئے طول و عرض کے اشارے اور تجارتی سگنل کے مجموعے کی مقدار کی طرف سے قیمتوں کے وسط میں لمبی لکیری طول و عرض کی نشاندہی کرنے کے لئے۔

طاقت کا تجزیہ

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

خطرے کا تجزیہ

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

اصلاح کی سمت

  1. مختلف پیرامیٹرز پر RSI اشارے کی تاثیر کی جانچ پڑتال کریں.
  2. دیگر معاون طول موج کے اشارے متعارف کرانے کی کوشش کریں۔
  3. HMA اشارے کی لمبائی پیرامیٹرز کو بہتر بنائیں۔
  4. اسٹاپ نقصان اور اسٹاپ اسٹاپ کی حکمت عملی شامل کریں۔
  5. بینڈ ٹرانزیکشنز کے انعقاد کی مدت کو ایڈجسٹ کریں۔

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy(title='Pyramiding BTC 5 min', overlay=true, pyramiding=5, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=20, commission_type=strategy.commission.percent, commission_value=0.075)
//the pyramide based on this script  https://www.tradingview.com/script/7NNJ0sXB-Pyramiding-Entries-On-Early-Trends-by-Coinrule/
//
fastLength = input(250, title="Fast filter length ", minval=1)
slowLength = input(500,title="Slow filter length",  minval=1)
source=close
v1=ema(source,fastLength)
v2=ema(source,slowLength)
//
//Backtest dates
fromMonth = input(defval=1, title="From Month")
fromDay = input(defval=10, title="From Day")
fromYear = input(defval=2020, title="From Year")
thruMonth = input(defval=1, title="Thru Month")
thruDay = input(defval=1, title="Thru Day")
thruYear = input(defval=2112, title="Thru Year")

showDate = input(defval=true, title="Show Date Range")

start = timestamp(fromYear, fromMonth, fromDay, 00, 00)  // backtest start window
finish = timestamp(thruYear, thruMonth, thruDay, 23, 59)  // backtest finish window
window() =>  // create function "within window of time"
    time >= start and time <= finish ? true : false


leng=1
p1=close[1]

len55 = 10
//taken from https://www.tradingview.com/script/Ql1FjjfX-security-free-MTF-example-JD/
HTF = input("1D", type=input.resolution)
ti = change( time(HTF) ) != 0
T_c = fixnan( ti ? close : na )

vrsi = rsi(cum(change(T_c) * volume), leng)
pp=wma(vrsi,len55)

d=(vrsi[1]-pp[1])
len100 = 10
x=ema(d,len100)
//
zx=x/-1
col=zx > 0? color.lime : color.orange

//

tf10 = input("1", title = "Timeframe", type = input.resolution, options = ["1", "5", "15", "30", "60","120", "240","360","720", "D", "W"])

length = input(50, title = "Period", type = input.integer)
shift = input(1, title = "Shift", type = input.integer)

hma(_src, _length)=>
    wma((2 * wma(_src, _length / 2)) - wma(_src, _length), round(sqrt(_length)))
    
hma3(_src, _length)=>
    p = length/2
    wma(wma(close,p/3)*3 - wma(close,p/2) - wma(close,p),p)

b =security(syminfo.tickerid, tf10, hma3(close[1], length)[shift])
//plot(a,color=color.gray)
//plot(b,color=color.yellow)
close_price = close[0]
len = input(25)

linear_reg = linreg(close_price, len, 0)


filter=input(true)

buy=crossover(linear_reg, b)

longsignal = (v1 > v2 or filter == false ) and buy and window()

//set take profit

ProfitTarget_Percent = input(3)
Profit_Ticks = close * (ProfitTarget_Percent / 100) / syminfo.mintick

//set take profit

LossTarget_Percent = input(10)
Loss_Ticks = close * (LossTarget_Percent / 100) / syminfo.mintick


//Order Placing

strategy.entry("Entry 1", strategy.long, when=strategy.opentrades == 0 and longsignal)

strategy.entry("Entry 2", strategy.long, when=strategy.opentrades == 1 and longsignal)

strategy.entry("Entry 3", strategy.long, when=strategy.opentrades == 2 and longsignal)

strategy.entry("Entry 4", strategy.long, when=strategy.opentrades == 3 and longsignal)

strategy.entry("Entry 5", strategy.long, when=strategy.opentrades == 4 and longsignal)





if strategy.position_size > 0
    strategy.exit(id="Exit 1", from_entry="Entry 1", profit=Profit_Ticks, loss=Loss_Ticks)
    strategy.exit(id="Exit 2", from_entry="Entry 2", profit=Profit_Ticks, loss=Loss_Ticks)
    strategy.exit(id="Exit 3", from_entry="Entry 3", profit=Profit_Ticks, loss=Loss_Ticks)
    strategy.exit(id="Exit 4", from_entry="Entry 4", profit=Profit_Ticks, loss=Loss_Ticks)
    strategy.exit(id="Exit 5", from_entry="Entry 5", profit=Profit_Ticks, loss=Loss_Ticks)