यह रणनीति प्रवेश और निकास संकेतों के रूप में उनके क्रॉसओवर के माध्यम से प्रवृत्ति उलट को पहचानने के लिए विभिन्न अवधियों की दो ईएमए लाइनों का उपयोग करती है। यह रणनीति सरल और लागू करने में आसान है।
रणनीति ta.ema का उपयोग करके दो EMA लाइनों की गणना करती है, एक छोटी अवधि के लिए लंबाई 10 और लंबी अवधि के लिए लंबाई 20 के साथ। यह प्रवेश और निकास बिंदुओं को निर्धारित करने के लिए ta.crossover और ta.crossunder का उपयोग करके EMA क्रॉसओवर और क्रॉसओवर की पहचान करता है। जब छोटा EMA लंबे EMA को पार करता है, तो यह लंबा हो जाता है। जब छोटा EMA लंबे EMA के नीचे पार करता है, तो यह छोटा हो जाता है। इस तरह EMA क्रॉसओवर का उपयोग प्रवृत्ति में मोड़ बिंदुओं को पकड़ने के लिए किया जाता है।
यह रणनीति दोहराए जाने वाले संकेतों से बचने के लिए अंतिम क्रॉसओवर के समय को रिकॉर्ड करने के लिए एक चर lastCrossTime का भी उपयोग करती है। प्रत्येक वैध क्रॉसओवर पर, यह पहले सभी वर्तमान पदों को बंद कर देता है, फिर क्रॉसओवर की दिशा में एक नई स्थिति खोलता है। स्थिति खोलने के बाद, लाभ लेने और स्टॉप लॉस को बाहर निकलने के लिए सेट किया जाता है।
रणनीति का तर्क सरल और स्पष्ट है, इसे समझना और लागू करना आसान है।
प्रवृत्ति उलट बिंदुओं की पहचान करने के लिए ईएमए क्रॉसओवर का उपयोग करना एक प्रभावी तकनीकी संकेतक रणनीति है जिसका आमतौर पर उपयोग किया जाता है।
विभिन्न अवधियों के ईएमए को अपनाने से अल्पकालिक आंदोलनों के प्रति संवेदनशीलता में सुधार होता है जबकि अभी भी बड़े रुझानों को पकड़ने में मदद मिलती है।
लाभ लेने और हानि रोकने से प्रत्येक व्यापार के जोखिम और लाभ को नियंत्रित करने में मदद मिलती है।
lastCrossTime चर डुप्लिकेट संकेतों को फ़िल्टर करता है और अनावश्यक ट्रेडों से बचाता है।
ईएमए क्रॉसओवर गलत संकेत उत्पन्न कर सकते हैं, कुछ whipsaw जोखिम के साथ।
फिक्स्ड टीपी और एसएल बदलती बाजार स्थितियों के अनुकूल नहीं हो सकते हैं। गतिशील स्तरों का उपयोग किया जाना चाहिए।
केवल ईएमए क्रॉसओवर पर भरोसा करने वाली प्रणालियां विभिन्न बाजारों में घाटे का सामना कर सकती हैं।
ट्रेडिंग लागत जैसे स्प्रेड पर विचार नहीं किया जाता है जो वास्तविक प्रदर्शन को प्रभावित करता है।
यह रणनीति बाजारों की तुलना में रुझानों में बेहतर काम करती है।
टीपी/एसएल को अनुकूलित करके, फिल्टर जोड़कर, अन्य संकेतकों को मिलाकर आदि में सुधार किया जा सकता है। लाइव ट्रेडिंग के लिए सख्त जोखिम नियंत्रण और बड़े एकल व्यापार घाटे से बचना आवश्यक है।
बेहतर संयोजन खोजने के लिए ईएमए अवधि का परीक्षण और अनुकूलन करें।
सिग्नल की गुणवत्ता में सुधार करने और झटके से बचने के लिए केडीजे, एमएसीडी आदि जैसे अन्य संकेतक जोड़ें।
गतिशील लाभ लेने और स्टॉप लॉस का प्रयोग करें, जैसे ट्रेंड के साथ ट्रेलिंग स्टॉप।
संकेतों की पुष्टि करने के लिए व्यापारिक मात्रा पर विचार करें।
संकेतों को मजबूत करने के लिए ब्रेकआउट जैसे मूल्य कार्रवाई पैटर्न को शामिल करें।
ट्रेडिंग लागतों जैसे स्प्रेड को ध्यान में रखें और तदनुसार टीपी/एसएल स्तरों को अनुकूलित करें।
यह रणनीति EMA क्रॉसओवर का उपयोग करके सरल और सीधा तरीके से रुझान उलटने की पहचान करती है। TP/SL का उपयोग जोखिम और पुरस्कारों को नियंत्रित करने के लिए किया जाता है। इसे लागू करना आसान है लेकिन EMA क्रॉसओवर में व्हिपसा जोखिम हैं। मजबूतता में सुधार के लिए पैरामीटर को ट्यून करके, फ़िल्टर जोड़कर और अन्य संकेतकों को मिलाकर आगे का अनुकूलन किया जा सकता है। यह रेंजिंग बाजारों के बजाय रुझान में बेहतर प्रदर्शन करता है। सख्त जोखिम प्रबंधन और इष्टतम TP/SL आकार लाइव ट्रेडिंग के लिए महत्वपूर्ण है। कुल मिलाकर यह एक बुनियादी रुझान अनुसरण प्रणाली के रूप में कार्य करता है और एल्गोरिथम ट्रेडिंग शिक्षा के लिए एक अच्छा प्रारंभिक बिंदु है।
/*backtest start: 2023-10-30 00:00:00 end: 2023-11-06 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy('XXXquang', overlay=true) // Sử dụng hàm input.int() và input.float() để tạo các trường nhập liệu với giới hạn giá trị length1 = input.int(10, title="Length EMA Short", minval=1) length2 = input.int(20, title="Length EMA Long", minval=1) lotSize = input.int(1, title="Lot Size", minval=1) takeProfitLevel = input.int(600, title="Take Profit Level", minval=1) stopLossLevel = input.int(200, title="Stop Loss Level", minval=1) ema1 = ta.ema(close, length1) ema2 = ta.ema(close, length2) var float lastCrossTime = na if ta.crossover(ema1, ema2) if na(lastCrossTime) strategy.close_all() strategy.entry('Buy Order', strategy.long, qty=lotSize) strategy.exit('Exit Buy', 'Buy Order', profit=takeProfitLevel / syminfo.pointvalue, loss=stopLossLevel / syminfo.pointvalue) lastCrossTime := timenow if ta.crossunder(ema1, ema2) if na(lastCrossTime) strategy.close_all() strategy.entry('Sell Order', strategy.short, qty=lotSize) strategy.exit('Exit Sell', 'Sell Order', profit=takeProfitLevel / syminfo.pointvalue, loss=stopLossLevel / syminfo.pointvalue) lastCrossTime := timenow plot(ema1, title='EMA Short', color=color.new(color.blue, 0), linewidth=2) plot(ema2, title='EMA Long', color=color.new(color.red, 0), linewidth=2)