अनुकूली नियमितीकृत चलती औसत पर आधारित क्रॉस-मार्केट आर्बिट्रेज रणनीति


निर्माण तिथि: 2023-11-16 16:20:11 अंत में संशोधित करें: 2023-11-16 16:20:11
कॉपी: 0 क्लिक्स: 642
1
ध्यान केंद्रित करना
1617
समर्थक

अनुकूली नियमितीकृत चलती औसत पर आधारित क्रॉस-मार्केट आर्बिट्रेज रणनीति

अवलोकन

यह रणनीति अनुकूली नियमित चलती औसत की गणना करके विभिन्न बाजारों के बीच सट्टा कारोबार को सक्षम करती है। इस रणनीति में क्रॉस-मार्केट सट्टा, गतिशील पैरामीटर समायोजन और जोखिम नियंत्रण जैसी विशेषताएं हैं।

रणनीति सिद्धांत

यह रणनीति पहले एक scaleMinimax फ़ंक्शन को परिभाषित करती है, जो समय-क्रम को एक निर्दिष्ट सीमा तक मानकीकृत करती है। फिर एक अनुकूलन योग्य नियमनशील चलती औसत rema फ़ंक्शन को परिभाषित करती है, जो सिग्नल लाइन को चिकना करने के बाद गणना करती है। सिग्नल लाइन की गणना निम्नानुसार की जाती हैः

  1. एक स्लाइडिंग विंडो को परिभाषित करें, डिफ़ॉल्ट लंबाई 5 दिन है.
  2. दैनिक सिग्नल मूल्य पिछले दिन के सिग्नल मूल्य और उस दिन के समापन मूल्य का भारित औसत है। भारित औसत एक अनुकूली भारित तंत्र का उपयोग करता है, वर्तमान मूल्य के करीब, अधिक वजन।
  3. सिग के परिवर्तन को अधिक सुचारू बनाने के लिए, एक वैध पद के रूप में λ को जोड़ें।

सिग्नल लाइन प्राप्त करने के बाद, रणनीति सिग्नल लाइन और कीमत के गोल्डन फोर्क डेड फोर्क के निर्णय के माध्यम से अधिक स्थान तय करती है।

  1. जब सिग पर कीमत चढ़ती है, तो अधिक करें।
  2. जब सिग्नल कीमत में हो, तो खाली कर दें।

इसके अलावा, इस नीति में एक चिकनाई कारक smooth और प्रदर्शन संकेत रेखा show_line को एक समायोज्य पैरामीटर के रूप में जोड़ा गया है, जिससे नीति की लचीलापन बढ़ जाती है।

श्रेष्ठता विश्लेषण

पारंपरिक चलती औसत रणनीतियों की तुलना में इस रणनीति के निम्नलिखित फायदे हैंः

  1. मूल्य परिवर्तनों के लिए तेजी से प्रतिक्रिया देने के लिए स्व-अधिभारित तंत्र का उपयोग करें।
  2. सिग्नल लाइनों को और अधिक चिकनी बनाने के लिए, कीमतों में भारी उतार-चढ़ाव के कारण गलत संकेतों से बचने के लिए, सामान्यीकरण तत्वों को जोड़ा गया।
  3. क्रॉस-मार्केट आर्बिट्रेशन, जो विभिन्न बाजारों के बीच कीमतों के अंतर का लाभ उठाने में मदद करता है।
  4. समायोज्य पैरामीटर डिजाइन लचीला है और बाजार की स्थिति के अनुसार अनुकूलित किया जा सकता है।

जोखिम और समाधान

इस रणनीति में कुछ जोखिम भी हैं:

  1. द्विपक्षीय क्रॉसिंग में गलत सिग्नल की संभावना अधिक होती है। समाधान सिग्नल लाइन के कंपन से बचने के लिए उचित रूप से चिकनाई मापदंडों को समायोजित करना है।

  2. क्रॉस-मार्केट सट्टा लगाने के लिए, यह सुनिश्चित करना आवश्यक है कि दोनों बाजार मूल्य-संबंधित हों और एक समान गति से चलें। सट्टा लगाने के लिए उच्च-संबंधित बाजारों का चयन करना एक समाधान है।

  3. पैरामीटर अनुकूलन के लिए पर्याप्त ऐतिहासिक डेटा जमा करने की आवश्यकता होती है। समाधान वास्तविक लेनदेन में सावधानीपूर्वक पैरामीटर को समायोजित करना है।

अनुकूलन दिशा

इस रणनीति को निम्नलिखित पहलुओं से भी अनुकूलित किया जा सकता हैः

  1. पैरामीटर चयन पर, एक मशीन सीखने एल्गोरिथ्म को स्वचालित रूप से अनुकूलित करने के लिए पैरामीटर सेट को शामिल किया जा सकता है।

  2. सिग्नल जनरेशन पर, अधिक संकेतक को संयोजन के लिए पेश किया जा सकता है, जिससे अधिक स्थिर ट्रेडिंग सिग्नल का निर्माण किया जा सकता है।

  3. जोखिम नियंत्रण पर, एक स्टॉप-लॉस लाइन सेट की जा सकती है ताकि एकल नुकसान को नियंत्रित किया जा सके।

  4. क्रॉस-मार्केट आर्बिट्रेज में, यह अधिक प्रासंगिक प्रकार के लेनदेन के लिए विस्तारित किया जा सकता है।

संक्षेप

इस रणनीति को क्रॉस-मार्केट लीवरेज ट्रेडिंग के लिए अनुकूलित किया गया है, जो कि स्वचालित रूप से चलती औसत की गणना के माध्यम से है। पारंपरिक चलती औसत रणनीतियों की तुलना में, इसमें पैरामीटर अनुकूलन, चिकनी प्रसंस्करण और क्रॉस-मार्केट लीवरेज जैसे फायदे हैं। आगे, मशीन सीखने, संयोजन संकेतों और जोखिम प्रबंधन के माध्यम से रणनीति को और अनुकूलित किया गया है।

रणनीति स्रोत कोड
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Crossover82%", overlay=true)

//
// Functions
//
scaleMinimax(X, p, min, max) => 
    hi = highest(X, p), lo = lowest(X, p)
    (max - min) * (X - lo)/(hi - lo) + min

rema(ts, p) => // regularized ma
    rm = 0.0, lambda = .5, a = 2 / (p + 1)
    rm := (nz(rm[1]) + a * (ts - nz(rm[1])) + lambda * (2 * nz(rm[1]) - nz(rm[2]))) / (lambda + 1)
    rm
    
//
// Inputs
//
X = input(close, title="Data source")
smooth = input(2, title="REMA smooth factor")
show_line = input(true, title="Show signal line")

//
// Main
//
p = 5
sig = rema(scaleMinimax(pow(X*p,-X) - 0.1, 100, lowest(X, 100), highest(X, 100)), smooth)

plot(show_line ? sig : na, linewidth=1)
plot(cross(sig, X) ? ohlc4 : na, style=circles, linewidth=8, color=blue, transp=50)

longCondition = crossover(sig, X)
if (longCondition)
    strategy.entry("LE", strategy.long)

shortCondition = crossunder(sig, X)
if (shortCondition)
    strategy.entry("SE", strategy.short)