गतिशील चलती औसत के आधार पर मात्रात्मक व्यापार रणनीति

लेखक:चाओझांग, दिनांकः 2024-02-18 09:53:48
टैगः

img

अवलोकन

इस रणनीति का नाम है Dynamic Moving Average Breakthrough Entry और Fixed Profit-taking/Stop-loss Exit पर आधारित Quantitative Trading Strategy। इस रणनीति का मुख्य विचार यह है कि हर सोमवार को जब समापन मूल्य 115 अवधि के Hull Dynamic Moving Average से नीचे हो तो लंबी पोजीशन खोलें, और उसके बाद हर बुधवार को बिना शर्त बंद करें, जिसमें लाभ-लक्ष्य और स्टॉप-लॉस के फिक्स्ड अनुपात एक साथ निर्धारित हों।

सिद्धांत

यह रणनीति मुख्य रूप से हुल मूविंग एवरेज और आवधिक व्यापार नियमों के संकेतकों के आधार पर तैयार की गई है।

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

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

अंत में, चूंकि प्रत्येक ट्रेड होल्डिंग अवधि अपेक्षाकृत छोटी होती है और ट्रेडिंग की आवृत्ति अधिक होती है, इसलिए यह कुछ हद तक पदों को समायोजित कर सकती है और एकल ट्रेड जोखिम को कम कर सकती है।

लाभ विश्लेषण

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

  1. प्रवेश संकेत संकेतक के रूप में हॉल मूविंग एवरेज का उपयोग करने से समयबद्ध बाजार में प्रवेश की सटीकता में सुधार होता है और रुझान के अवसरों पर कब्जा होता है।

  2. आवधिक निकास पद्धति से तर्कहीन व्यवहार से जोखिमों से बचा जा सकता है और निकासी की संभावना कम हो सकती है।

  3. निश्चित लाभ लक्ष्य और स्टॉप-लॉस बिंदु प्रत्येक व्यापार के जोखिम-लाभ अनुपात को प्रभावी ढंग से नियंत्रित कर सकते हैं।

  4. उच्च व्यापारिक आवृत्ति पदों को समायोजित करने और एकल व्यापार जोखिम को कम करने के लिए फायदेमंद है।

  5. ट्रेडिंग नियम सरल और समझने और लागू करने में आसान हैं, जो एल्गोरिदमिक मात्रात्मक ट्रेडिंग के लिए उपयुक्त है।

जोखिम विश्लेषण

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

  1. बाजार में लंबे समय तक समेकन होने से प्रवेश के बाद फंसने की अधिक संभावना हो सकती है।

  2. निश्चित लाभ लक्ष्य और स्टॉप-लॉस बिंदुओं में लचीलापन की कमी होती है और वे बहुत जल्दी या बहुत देर से स्थिति से बाहर निकल सकते हैं।

  3. समय-समय पर बाहर निकलने से आकस्मिक घटनाओं में भारी नुकसान हो सकता है।

  4. बार-बार व्यापार करने से लागत और फिसलने का प्रभाव बढ़ जाता है।

  5. अनुचित पैरामीटर सेटिंग्स (जैसे अवधि संख्या) रणनीति प्रदर्शन को प्रभावित कर सकती हैं।

उपरोक्त जोखिमों को कम करने के लिए कुछ अनुकूलन उपायों पर विचार किया जा सकता हैः

  1. समेकन चरणों में प्रवेश करने से बचने के लिए प्रवेश से पहले बाजार की स्थिति का आकलन करें।

  2. लाभ लेने और स्टॉप-लॉस के लिए गतिशील या कई निश्चित अनुपात निर्धारित करें।

  3. अत्यधिक अस्थिरता से बचने के लिए महत्वपूर्ण घटनाओं के आसपास व्यापार को निलंबित करें।

  4. लागत और फिसलन को कम करने के लिए उचित रूप से कम व्यापारिक आवृत्ति।

  5. पैरामीटर सेटिंग्स को अनुकूलित करें और रणनीति को अधिक स्थिर बनाने के लिए मजबूती परीक्षण करें।

अनुकूलन दिशाएँ

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

  1. अधिक सटीक संकेतों के लिए गतिशील रूप से चलती औसत के मापदंडों को अनुकूलित करने के लिए मशीन लर्निंग मॉडल का उपयोग करें।

  2. अधिक जटिल प्रवेश और निकास नियमों को डिजाइन करने के लिए कई संकेतकों को जोड़ने का प्रयास करें।

  3. विभिन्न अवधियों और बाजार परिवेशों के अनुसार अनुकूलनशील लाभ लेने और स्टॉप-लॉस तंत्रों को डिजाइन करें।

  4. बेहतर पूंजी प्रबंधन के लिए जोखिम प्रबंधन मॉडल शामिल करें।

  5. स्टॉक विभाजन जैसी घटनाओं को सुचारू रूप से संभालने के लिए डिजाइन अधिकार समायोजन मॉड्यूल।

  6. लाइव बाजारों में रणनीति के प्रदर्शन का परीक्षण करने के लिए वास्तविक ट्रेडिंग सत्यापन मॉड्यूल जोड़ें।

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

निष्कर्ष

यह रणनीति हॉल डायनेमिक मूविंग एवरेज इंडिकेटर सिग्नल एंट्री और फिक्स्ड साइकिल एग्जिट के विचारों के आधार पर डिज़ाइन की गई है। इसमें सटीक सिग्नल और कम ड्रॉडाउन संभावना जैसे फायदे हैं, जबकि एकल ट्रेड के लाभ लेने और स्टॉप-लॉस को नियंत्रित करता है। लेकिन फंसने और अनुचित लाभ लेने / स्टॉप-लॉस सेटिंग्स जैसी समस्याएं भी मौजूद हैं। भविष्य के अनुकूलन दिशाओं में प्रवेश के लिए मशीन लर्निंग और अधिक जटिल मल्टी-इंडिकेटर संयोजनों को पेश करना, अनुकूलनशील लाभ लेने / स्टॉप-लॉस तंत्र डिजाइन करना, अधिकार समायोजन और वास्तविक ट्रेडिंग सत्यापन मॉड्यूल आदि जोड़ना शामिल है। इन उपायों को व्यापक रूप से अपनाने से, इस रणनीति की स्थिरता और लाभप्रदता में वृद्धि होगी।


/*backtest
start: 2024-01-18 00:00:00
end: 2024-02-17 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © gnatskiller

//@version=5
strategy("Strategia HMA + LUN/MER", overlay=true)

// Inputs: stoploss %, takeProfit %
stopLossPercentage = input.float(defval=0.8, title='StopLoss %', minval=0.1, step=0.2) / 100
takeProfit = input.float(defval=1.5, title='Take Profit %', minval=0.3, step=0.2) / 100

// Calculate HMA 115
hma115 = ta.hma(close, 115)

// Exit and Entry Conditions - Check current day, session time, and price below HMA 115
isLong = dayofweek == dayofweek.monday  and not na(time(timeframe.period, "1000-1101")) and close < hma115
isExit = dayofweek == dayofweek.wednesday and not na(time(timeframe.period, "1000-1101"))

// Calculate Stoploss and Take Profit values
SL = strategy.position_avg_price * (1 - stopLossPercentage)
TP = strategy.position_avg_price * (1 + takeProfit)

// Strategy Enter, and exit when conditions are met
if isLong
    strategy.entry("Enter Long", strategy.long)
if strategy.position_size > 0 
    if isExit
        strategy.close("Enter Long", comment="Exit")
        strategy.exit("Exit", "Exit", stop=SL, limit=TP)

// Plot Stoploss and TakeProfit lines
plot(strategy.position_size > 0 ? SL : na, style=plot.style_linebr, color=color.red, linewidth=2, title="StopLoss")
plot(strategy.position_size > 0 ? TP : na, style=plot.style_linebr, color=color.green, linewidth=2, title="TakeProfit")

// Plot HMA 115
plot(hma115, color=color.blue, title="HMA 115")


अधिक