शुरू करेंमुफ़्त में शुरू करें

अपना इंडिकेटर कोड करें - I

अभी तक, आपने add.indicator() फंक्शन का उपयोग करके ऐसे इंडिकेटर्स इस्तेमाल किए हैं जो आपके लिए पहले से लिखे हुए थे. अब समय है कि आप अपना इंडिकेटर लिखें और लागू करें.

आपका इंडिकेटर फंक्शन दो अलग-अलग इंडिकेटर्स का औसत निकालेगा ताकि 3.5 का RSI बने. ऐसे करें:

  • एक price series इनपुट लें.
  • RSI 3 कैलकुलेट करें.
  • RSI 4 कैलकुलेट करें.
  • RSI 3 और RSI 4 का औसत रिटर्न करें.

इसे RSI 3.5 समझा जा सकता है, क्योंकि यह RSI 3 से लंबा और RSI 4 से छोटा है. औसत लेने से, यह इंडिकेटर चार दिन पहले के प्रभाव को ध्यान में रखता है, फिर भी एक साधारण RSI 4 से तेज रहता है, और RSI 3 व RSI 4 दोनों का noise भी कम करता है.

इस अभ्यास में, आप इस इंडिकेटर के लिए calc_RSI_avg() नाम का फंक्शन बनाएँगे और इसे अपनी स्ट्रैटेजी strategy.st में जोड़ेंगे. सभी आवश्यक पैकेज आपके लिए पहले से लोड हैं.

यह अभ्यास पाठ्यक्रम का हिस्सा है

R में फाइनेंशियल ट्रेडिंग

पाठ्यक्रम देखें

अभ्यास निर्देश

  • calc_RSI_avg नाम का एक फंक्शन बनाएँ, जिसमें तीन आर्ग्युमेंट हों: price, n1, और n2 — इसी क्रम में.
  • lookback n1 के साथ एक RSI कैलकुलेट करें, जिसका नाम RSI_1 रखें.
  • lookback n2 के साथ एक RSI कैलकुलेट करें, जिसका नाम RSI_2 रखें.
  • RSI_1 और RSI_2 का औसत निकालें. इसे RSI_avg कहें.
  • colnames() का उपयोग करके RSI_avg का कॉलम नाम RSI_avg सेट करें, और RSI_avg रिटर्न करें.
  • इस इंडिकेटर को अपनी स्ट्रैटेजी में n1 = 3 और n2 = 4 इनपुट्स के साथ जोड़ें. इस इंडिकेटर का लेबल RSI_3_4 रखें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# Write the calc_RSI_avg function
calc_RSI_avg <- function(price, n1, n2) {
  
  # RSI 1 takes an input of the price and n1
  RSI_1 <- RSI(price = price, n = ___)
  
  # RSI 2 takes an input of the price and n2
  RSI_2 <- RSI(price = price, n = ___)
  
  # RSI_avg is the average of RSI_1 and RSI_2
  RSI_avg <- (___ + ___)/2
  
  # Your output of RSI_avg needs a column name of RSI_avg
  colnames(RSI_avg) <- "___"
  return(___)
}

# Add this function as RSI_3_4 to your strategy with n1 = 3 and n2 = 4
add.indicator(strategy.st, name = ___, arguments = list(price = quote(Cl(mktdata)), n1 = ___, n2 = ___), label = ___)
कोड संपादित करें और चलाएँ