रणनीतिकारों की आवश्यकताएं
क्या मैं अलग-अलग स्थितियों के लिए अलग-अलग स्टॉप-लॉस अंतर सेट कर सकता हूं?
उदाहरण के लिए, पारंपरिक मॉडल में, स्थिति को खोलने के लिए अलग-अलग शर्तों के बीच कोई अंतर नहीं है।
निम्नलिखित कोड एक सरल पारंपरिक रणनीति है, जो बिना किसी भेदभाव के शर्तों को खोलता हैः
MA5^^MA(C,5);
MA10^^MA(C,10);
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K..SMA(RSV,3,1);
D..SMA(K,3,1);
CROSS(MA5,MA10)||CROSS(K,D),BK;
C>HV(H,10)||C<BKPRICE-5*MINPRICE,SP;
AUTOFILTER;
और समूह निर्देशों का उपयोग करना अलग है
समूह निर्देशों को समतल करने की शर्तों के लिए n समूहों में विभाजित किया जा सकता है, किसी समूह के सशर्त खुले पदों को केवल एक समूह के समतुल्य समतल स्थिति की शर्तों के लिए समतल किया जा सकता है, अन्य समूहों के समतल स्थिति की शर्तों को पूरा करने के लिए कोई संकेत नहीं दिया जाएगा, न ही यह सौंपा जाएगा।
उदाहरण के लिए:
पहले समूह ने कई शर्तें लगाई
MA5^^MA(C,5);
MA10^^MA(C,10);
CROSS(MA5,MA10),BK;
CROSS(MA10,MA5),SP;
दूसरे समूह ने कई शर्तें लगाईं
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K..SMA(RSV,3,1);
D..SMA(K,3,1);
CROSS(K,D),BK;
C>HV(H,10)||C<BKPRICE-5*MINPRICE,SP;
एक ही मॉडल में स्थितियों के विभिन्न समूहों को कैसे अलग किया जाए? आइए हम उन्हें लागू करें।
सबसे पहले, मॉडल को फ़िल्टर मॉडल और गैर-फ़िल्टर मॉडल में विभाजित किया गया हैः
फ़िल्टरिंग मॉडलः विभिन्न खुले स्थितियों के लिए अलग-अलग स्थिति के साथ स्थिति को साफ करना, निर्देश समूहों का उपयोग करके किया जा सकता है।
गैर-फ़िल्टरिंग मॉडलः पहली बार में प्रवेश करने की रणनीति और जमा करने की रणनीति के विपरीत, एक अलग स्टॉप-लॉस-पील-ऑफ रणनीति के साथ एक स्थिति को कम करना चाहते हैं, जिसे निर्देश समूहों का उपयोग करके किया जा सकता है।
फ़िल्टर मॉडल
//A组指令
A组的开多条件,BK('A');
A组的开空条件,SK('A');
A组的平多条件,SP('A');
A组的平空条件,BP('A');
//B组指令
B组的开多条件,BPK('B');
B组的开空条件,SPK('B');
B组的平多条件,SP('B');
B组的平空条件,BP('B');
AUTOFILTER;//过滤函数
ध्यान देंः फ़िल्टर मॉडल के लिए समूहों को ट्रेडिंग निर्देशों के बाद समूहों में जोड़ा जाना चाहिए और एकल उद्धरणों के साथ संलग्न किया जाना चाहिए। जैसे BK ((‘A’)
गैर-फ़िल्टर मॉडल
//A组指令
A组的开多条件1,BK('A',2);
A组的开空条件1,SK('A',2);
A组的加多条件2,BK('A',1);
A组的加空条件2,SK('A',1);
A组的平多条件,SP('A',GROUPBKVOL('A'));
A组的平空条件,BP('A',GROUPSKVOL('A'));
//B组指令
B组的加多条件,BK('B',1);
B组的加空条件,SK('B',1);
B组的平多条件1,SP('B',GROUPBKVOL('B'));
B组的平空条件1,BP('B',GROUPSKVOL('B'));
नोटः गैर-फ़िल्टर्ड मॉडल के लिए समूहों को समूहों और हाथों की संख्या में शामिल करने की आवश्यकता होती है, और समूहों को एकल उद्धरणों के साथ संलग्न किया जाना चाहिए। उदाहरण के लिए BK ((‘A’,2)
फ़िल्टरिंग मॉडल: पहले समूह फ़िल्टर और फिर सिग्नल फ़िल्टर
समूह फ़िल्टरिंग का अर्थ हैः यदि पिछले K लाइन सिग्नल समूह A से एक खुले संकेत है (((BK SK BPK SPK) वर्तमान K लाइन केवल समूह A के खुले संकेत हो सकता है। यदि पिछले K लाइन सिग्नल समूह A से खुले संकेत है (((BP SP) वर्तमान K लाइन किसी भी समूह के खुले संकेत हो सकता है। (((प्रथम खुले संकेत को उस क्रम में लें जहां संकेत दिखाई देते हैं)
निर्बाध स्थिति की शर्त केवल निर्बाध स्थिति की शर्तों को पूरा कर सकती है
सिग्नल फ़िल्टरिंग का मतलब है कि सिग्नल को फ़िल्टर करना
प्राथमिकता इस प्रकार है:
गैर-फ़िल्टर्ड मॉडल:
नोटः बिना समूह के क्लियरपोस्ट की शर्तें केवल बिना समूह के क्लियरपोस्ट की शर्तें हैं
अब हम कुछ रणनीतियों के उदाहरणों के साथ देखेंगे कि इन निर्देशों को कैसे समूहीकृत किया जाता है जब हम कोड लिखते हैं
फ़िल्टर मॉडल
ट्रेडिंग सिस्टमः 20 चक्र और 60 चक्र के औसत के रूप में प्रवृत्ति को निर्धारित करने के लिए मानक के रूप में।
कोड:
MA20^^MA(C,20);
MA60^^MA(C,60);
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
J:=3*K-2*D;
HH:=HV(H,10);
LL:=LV(L,10);
MA20>MA60&&H>HH&&C>O,BK('A');
MA20<MA60&&L<LL&&C<O,SK('A');
L<LV(L,5)||CROSSDOWN(MA20,MA60)||C<BKPRICE-5*MINPRICE,SP('A');
H>HV(H,5)||CROSSUP(MA20,MA60)||C>SKPRICE+5*MINPRICE,BP('A');//只平A组开仓
MA20>MA60&&CROSSUP(K,D)&&C>O,BK('B');
MA20<MA60&&CROSSDOWN(K,D)&&C<O,SK('B');
C>BKPRICE+5*MINPRICE||C<BKPRICE-2*MINPRICE||C<REF(L,BARSBK),SP('B');
C<SKPRICE-5*MINPRICE||C>SKPRICE+2*MINPRICE||C>REF(H,BARSSK),BP('B');//只平B组开仓
//不同的开仓条件开仓,用不同的平仓条件,有针对性的平仓。达到不同行情试用不同策略的目的。
AUTOFILTER;
गैर-फ़िल्टर मॉडल
ट्रेडिंग सिस्टमः 5 चक्रों और 10 चक्रों के साथ लाइन फोर्क डेड फोर्क को पहली बार खोलने की शर्त के रूप में।
कोड:
MA5^^MA(C,5);
MA10^^MA(C,10);
MA20:=MA(C,20);
MA60^^MA(C,60);
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
J:=3*K-2*D;
HH:=HV(H,10);
LL:=LV(L,10);
CROSSUP(MA5,MA10)&&BKVOL=0&&C>=O,BK('A',2);
CROSSDOWN(MA5,MA10)&&SKVOL=0&&C<=O,SK('A',2);
CROSSUP(MA5,MA60)&&ISLASTBK&&BKVOL=2,BK('A',1);
CROSSDOWN(MA5,MA60)&&ISLASTSK&&SKVOL=2,SK('A',1);
MA5>MA60&&H>HH&&ISLASTSP&&REF(GROUPBKVOL('A'),BARSSP+1)>0,BK('B',1);
MA5<MA60&&L<LL&&ISLASTBP&&REF(GROUPSKVOL('A'),BARSBP+1)>0,SK('B',1);
L<LV(L,5)||C<REF(L,BARSBK)&&(C<BKPRICE-2*MINPRICE),SP('A',GROUPBKVOL('A'));
H>HV(H,5)||C>REF(H,BARSSK)&&(C>SKPRICE+2*MINPRICE),BP('A',GROUPSKVOL('A'));
C>BKPRICE+10*MINPRICE||CROSSDOWN(MA5,MA60),SP('B',BKVOL);
C<SKPRICE-10*MINPRICE||CROSS(MA5,MA60),BP('B',SKVOL);
इन दो प्रकार के मॉडल के लिए विशिष्ट मामले का विश्लेषण है, जिससे पाठक देख सकते हैं कि My भाषा समूह निर्देशों के लिए कैसे व्यवहार करती है, हम अपनी रणनीति तर्क के अनुसार अलग-अलग समूह आवश्यकताएं बना सकते हैं, ताकि हम जिस रणनीति तर्क को व्यक्त करना चाहते हैं उसे कोड में सबसे स्पष्ट और कम से कम त्रुटि के साथ प्रदर्शित कर सकें।