RSI اشارے اور چلتی اوسط پر مبنی مقداری تجارتی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-25 11:40:36
ٹیگز:

img

جائزہ

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

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

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

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

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

فوائد

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

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

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

  3. خطرات کو اچھی طرح سے کنٹرول کیا جاسکتا ہے۔ RSI منافع لے سکتے ہیں مناسب منافع کی حد میں پوزیشنوں کو برقرار رکھ سکتے ہیں اور تجارتی خطرات کو مؤثر طریقے سے کنٹرول کرسکتے ہیں۔

  4. پیرامیٹرز کو بہتر بنانا آسان ہے۔ ایس ایم اے کی مدت ، آر ایس آئی پیرامیٹرز وغیرہ کو مختلف مارکیٹ کے ماحول کے مطابق ڈھالنے کے لئے لچکدار طریقے سے ایڈجسٹ کیا جاسکتا ہے۔

  5. سرمایہ کے استعمال کی اعلی کارکردگی۔ دارالحکومت کا موثر استعمال کرتے ہوئے ، رجحان کی توسیع اور جھٹکے کے مراحل کے دوران کثرت سے تجارت کی جاسکتی ہے۔

خطرے کا تجزیہ

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

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

  2. تجارت کا کثرت سے خطرہ۔ اتار چڑھاؤ والے بازاروں میں ، اس کی وجہ سے پوزیشنوں کو زیادہ کثرت سے کھولنے اور بند کرنے کا سبب بن سکتا ہے۔

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

  4. منافع کا خطرہ مول لیں۔ غیر مناسب آر ایس آئی منافع لینے کی ترتیبات بھی پوزیشنوں سے قبل از وقت باہر نکلنے یا منافع لینے کے بعد بڑھتی ہوئی بڑھتی ہوئی ہوسکتی ہے۔

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

اصلاح کی سمت مندرجہ ذیل ہیں:

  1. سگنلز کو زیادہ درست اور قابل اعتماد بنانے کے لیے آر ایس آئی کے ساتھ مل کر ایم اے سی ڈی، بولنگر بینڈ اور دیگر اشارے استعمال کرنے کی کوشش کریں۔

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

  3. منافع حاصل کرنے کی حکمت عملیوں کے لئے اصلاح کے طریقہ کار کو بڑھانا تاکہ منافع حاصل کرنے کو زیادہ ذہین اور مارکیٹ کی تبدیلیوں کے مطابق ڈھال لیا جاسکے۔

  4. ایک ہی تجارت کے خطرات کو کم کرنے کے لئے پوزیشن کے سائز کو متحرک طور پر ایڈجسٹ کرکے پوزیشن مینجمنٹ کی حکمت عملیوں کو بہتر بنائیں۔

  5. ہائی فریکوئنسی ڈیٹا کو یکجا کریں اور حکمت عملی کی تعدد کو بہتر بنانے کے لئے ہائی فریکوئنسی ٹریڈنگ کے لئے ٹِک لیول کے ریئل ٹائم ڈیٹا کا استعمال کریں۔

نتیجہ

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


/*backtest
start: 2023-12-17 00:00:00
end: 2023-12-18 19:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//1. 做多
//    a. RSI在超买区间时不开单,直到RSI回落一点再开单
//    b. 已经有多仓,如果RSI超买,则平多获利,当RSI回落一点之后,再次开多,直到有交叉信号反转做空

//2. 做空
//    a. RSI在超卖区间时不开单,直到RSI回落一点之后再开多单
//    b. 已经有空仓,如果RSI超卖,则平空获利,当RSI回落一点之后,再开空单,直到有交叉信号反转做多

//@version=4
strategy("策略_RSI+移动揉搓线_", overlay=true)

// 输入
fastLength = input(11, minval=1)
slowLength = input(82,minval=1)
length = input(title="长度", type=input.integer, defval=14, minval=1, maxval=100)
hight_rsi = input(title="rsi超过上轨平多获利", type=input.integer, defval=80, minval=1, maxval=100)
low_rsi = input(title="rsi超过下轨平空获利", type=input.integer, defval=20, minval=1, maxval=100)

open_long_rsi_threshold = input(title="rsi低于该阈值时才开多", type=input.integer, defval=75, minval=1, maxval=100)
open_short_rsi_threshold = input(title="rsi高于该阈值时才开空仓", type=input.integer, defval=25, minval=1, maxval=100)

// 均线
sma_fast = sma(close, fastLength)
sma_slow = sma(close, slowLength)
// RSI
rsi = rsi(close, length)

//**********变量*start*******//
var long_f = false // 标记是否是均线交叉多头
var short_f = false // 标记是否是均线交叉空头
var long_open_pending = false // 标记开仓时rsi是否处于超买状态
var short_open_pending = false // 标记开仓时rsi是否处于超卖
var long_rsi_over_buy = false // 标记 多仓时 是否发生超买平多获利
var short_rsi_over_sell = false // 标记 空仓时 是否发生超卖平空获利

//**********逻辑*start*******//

// 买入
longCondition = crossover(sma_fast, sma_slow)
if (longCondition)
    short_rsi_over_sell := false // 清空该标记,防止再次开空仓
    long_f := true
	short_f := false
	if (rsi < hight_rsi)
	    // 并且没有超买
	    strategy.entry("多", long=strategy.long)
    if (rsi > hight_rsi)
        // 开仓时发生超买,等待rsi小于hight_rsi
	    long_open_pending := true

// 卖出
shortCondition = crossunder(sma_fast, sma_slow)
if (shortCondition)
    long_rsi_over_buy := false //清空该标记,防止再次开多仓
    long_f := false
    short_f := true
    if (rsi > low_rsi)
        strategy.entry("空", long=strategy.short)
	if (rsi < low_rsi)
	    // 开仓时发生超卖,等待rsi大于low_rsi
	    short_open_pending := true
	    

// 等待RSI合理,买入开仓
if (long_f and long_open_pending and strategy.position_size == 0 and rsi < open_long_rsi_threshold)
    strategy.entry("多", long=strategy.long)
	long_open_pending := false
// 等待RSI合理,卖出开仓
if (short_f and short_open_pending and strategy.position_size == 0 and rsi > open_short_rsi_threshold)
    strategy.entry("空", long=strategy.short)
	short_open_pending := false


	
//RSI止盈(RSI超买平多)
if (strategy.position_size > 0 and long_f and rsi > hight_rsi)
	strategy.close_all()
	long_rsi_over_buy := true
//RSI止盈(RSI超卖平空)
if (strategy.position_size < 0 and short_f and rsi < low_rsi)
	strategy.close_all()
	short_rsi_over_sell := true
	
	
//RSI止盈之后,再次开多
if (long_f and long_rsi_over_buy and strategy.position_size == 0 and rsi < hight_rsi)
    long_rsi_over_buy := false
    strategy.entry("多", long=strategy.long)
//RSI止盈之后,再次开空
if (short_f and short_rsi_over_sell and strategy.position_size == 0 and rsi > low_rsi)
    short_rsi_over_sell := false
    strategy.entry("空", long=strategy.short)


//**********绘图*start*******//

p1 = plot(sma_fast, linewidth=2, color=color.green)
p2 = plot(sma_slow, linewidth=2, color=color.red)
fill(p1, p2, color=color.green)
plot(cross(sma_fast, sma_slow) ? sma_fast : na, style = plot.style_circles, linewidth = 4)

// 绘制rsi线
//plot(rsi, color=color.green, editable=true, style=plot.style_circles, linewidth=2)

// 绘制上下轨
//high_ = hline(80, title="上轨")
//low_ = hline(20, title="下轨")
//fill(high_, low_, transp=80, editable=true, title="背景")
    
    
    
    
    
    
    

مزید