hans123 इंट्राडे ब्रेकथ्रू रणनीति

लेखक:अच्छाई, बनाया गयाः 2020-08-12 11:38:39, अद्यतन किया गयाः 2023-10-10 21:15:02

img

प्रस्तावना

HANS123 रणनीति को सबसे पहले मुख्य रूप से विदेशी मुद्रा बाजार पर लागू किया गया था। इसकी ट्रेडिंग विधि अपेक्षाकृत सरल है और ट्रेंड ब्रेकथ्रू सिस्टम से संबंधित है। यह ट्रेडिंग विधि ट्रेंड बनने के तुरंत बाद बाजार में प्रवेश कर सकती है, इसलिए यह कई व्यापारियों द्वारा पसंद की जाती है। अब तक, HANS123 ने बहुत सारे संस्करणों का विस्तार किया है, आइए HANS123 रणनीति को एक साथ समझें और तैनात करें।

img

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

कुछ लोगों का मानना है कि बाजार में सबसे बड़ा विचलन सुबह के समय होता है। लगभग 30 मिनट के बाद, बाजार ने सभी प्रकार की रात भर की जानकारी को पूरी तरह से पच लिया है, और मूल्य प्रवृत्ति तर्कसंगत होगी और सामान्य हो जाएगी। दूसरे शब्दों मेंः पहले 30 मिनट या उससे अधिक समय में बाजार की प्रवृत्ति मूल रूप से आज के समग्र व्यापार पैटर्न का गठन करती है।

  • ऊपरी रेलः खोलने के 30 मिनट के भीतर उच्चतम मूल्य
  • निचला रेलः खोलने के 30 मिनट के भीतर सबसे कम कीमत

इस समय उत्पन्न सापेक्ष उच्च और निम्न बिंदु डॉ सिद्धांत में प्रभावी उच्च और निम्न बिंदुओं का गठन करते हैं, और HANS123 रणनीति इसके द्वारा स्थापित ट्रेडिंग तर्क है। घरेलू वायदा बाजार में, बाजार सुबह 09:00 बजे खुलता है, और 09:30 बजे आप यह तय कर सकते हैं कि क्या यह आज लंबा या छोटा है। जब कीमत उच्च बिंदु को ऊपर की ओर तोड़ती है, तो कीमत आसानी से बढ़ती रहेगी; जब कीमत निम्न बिंदु को नीचे की ओर तोड़ती है, तो कीमत आसानी से गिरती रहेगी।

  • लंबी स्थिति खोलना: वर्तमान में कोई होल्डिंग स्थिति नहीं है, और कीमत ऊपरी रेल से ऊपर टूट जाती है
  • शॉर्ट पोजीशन खोलनाः वर्तमान में कोई होल्डिंग पोजीशन नहीं है और कीमत निचले रेल से नीचे टूट जाती है

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

  • लॉन्ग पोजीशन स्टॉप लॉसः मौजूदा लॉन्ग पोजीशन लॉस राशि तक पहुंच गई है
  • शॉर्ट पोजीशन स्टॉप लॉसः वर्तमान शॉर्ट पोजीशन नुकसान की राशि तक पहुंच गई है
  • लंबी पोजीशन के लिए लाभ लें, लंबी पोजीशन रखें और लाभ राशि तक पहुंचें
  • शॉर्ट पोजीशन के लिए लाभ लें, शॉर्ट पोजीशन रखें और लाभ राशि तक पहुंचें

रणनीति लेखन

बारी-बारी से खोलेंःfmz.comवेबसाइट> लॉगिन> डैशबोर्ड > रणनीति पुस्तकालय > नई रणनीति > पायथन भाषा का चयन करने और रणनीति लिखना शुरू करने के लिए ऊपरी दाएं कोने में ड्रॉप-डाउन मेनू पर क्लिक करें. नीचे दिए गए कोड में टिप्पणियों पर ध्यान दें.

चरण 1: रणनीति ढांचा लिखें

# Strategy main function
def onTick():
    pass


# Program entry
def main():
    while True: # enter infinite loop mode
        onTick() # execute strategy main function
        Sleep(1000) # Sleep for 1 second

एक रणनीति ढांचा लिखना, यह पिछले अध्याय में सीखा गया है, एक हैonTickकार्य, और अन्य हैmainकार्य, जिसमेंonTickसमारोह में एक अंतहीन लूप में निष्पादित किया जाता हैmain function.

चरण 2: वैश्विक चर को परिभाषित करें

up_line = 0 # upper rail
down_line = 0 # lower rail
trade_count = 0 # Number of transactions on the day

चूंकि ऊपरी और निचले रेल केवल 09:30 के समय पर गिने जाते हैं, और बाकी समय में कोई आंकड़े नहीं किए जाते हैं, इसलिए हमें इन दो चरों को लूप के बाहर लिखने की आवश्यकता है। इसके अलावा, एक दिन के व्यापार में लेनदेन की संख्या को सीमित करने के लिए,trade_countचर भी लूप के बाहर लिखा जाता है।onTickरणनीति, आप का उपयोग करने की जरूरत हैglobalसंदर्भ के लिए कीवर्ड।

चरण 3: डेटा प्राप्त करें

exchange.SetContractType("rb888") # Subscribe to futures varieties
bar_arr = _C(exchange.GetRecords, PERIOD_M1) # Get 1-minute K line array
current_close = bar_arr[-1]['Close'] # Get the latest price
if len(bar_arr) <50: # If less than 50 k line bars
    return # Return to continue waiting for data

डेटा प्राप्त करने के लिए सबसे पहलेSetContractTypeएफएमजेड प्लेटफॉर्म एपीआई में फ्यूचर्स किस्मों की सदस्यता लेने के लिए कार्य करें और फिरGetRecordsके लाइन सरणी प्राप्त करने के लिए समारोह. आप भी के लाइन सरणी निर्दिष्ट में पारित कर सकते हैंPERIOD_M11मिनट जब उपयोगGetRecords function.

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

चरण 4: प्रसंस्करण समय फ़ंक्शन

def current_time():
    current_time = bar_arr[-1]['Time'] # Get current K-line timestamp
    time_local = time.localtime(current_time / 1000) # Processing timestamp
    hour = time.strftime("%H", time_local) # Format the timestamp and get the hour
    minute = time.strftime("%M", time_local) # Format the timestamp and get the minute
    if len(minute) == 1:
        minute = "0" + minute
    return int(hour + minute)

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

चरण 5: ऊपरी और निचले रेल की गणना करें

global up_line, down_line, trade_count # Introduce global variables
current_time = current_time() # processing time
if current_time == 930: # If the latest K-line time is 09:30
    up_line = TA.Highest(bar_arr, 30,'High') + count # The highest price of the first 30 k line bars
    down_line = TA.Lowest(bar_arr, 30,'Low')-count # The lowest price of the first 30 ke line bars
    trade_count = 0 # Reset the number of transactions to 0

चरण 6: पद प्राप्त करें

position_arr = _C(exchange.GetPosition) # Get position array
if len(position_arr) > 0: # If the position array length is greater than 0
    position_arr = position_arr[0] # Get position dictionary data
    if position_arr['ContractType'] =='rb888': # If the position symbol is equal to the subscription symbol
        if position_arr['Type']% 2 == 0: # If it is a long position
            position = position_arr['Amount'] # The number of assigned positions is a positive number
        else:
            position = -position_arr['Amount'] # Assign a negative number of positions
        profit = position_arr['Profit'] # Get position profit and loss
else:
    position = 0 # The number of assigned positions is 0
    profit = 0 # Assign position profit and loss to 0

स्थिति की स्थिति रणनीति तर्क शामिल है. हमारे पहले दस सबक हमेशा आभासी होल्डिंग पदों का इस्तेमाल किया है, लेकिन एक वास्तविक व्यापार वातावरण में, यह सबसे अच्छा हैGetPositionवास्तविक स्थिति की जानकारी प्राप्त करने के लिए कार्य, जिसमें शामिल हैंः स्थिति की दिशा, स्थिति लाभ और हानि, पदों की संख्या, आदि।

चरण 7: ऑर्डर दें

# If it is close to market closing or reach taking profit and stopping loss
if current_time > 1450 or profit > stop * 3 or profit < -stop:
    if position > 0: # If holding a long position
        exchange.SetDirection("closebuy") # Set transaction direction and type
        exchange.Sell(current_close-1, 1) # Close long order
    elif position <0: # If holding an empty order
        exchange.SetDirection("closesell") # Set transaction direction and type
        exchange.Buy(current_close + 1, 1) # Close short order
# If there is no current position, and it is less than the specified number of transactions, and within the specified trading time
if position == 0 and trade_count < 2 and 930 < current_time < 1450:
    if current_close > up_line: # If the price is greater than the upper line
        exchange.SetDirection("buy") # Set transaction direction and type
        exchange.Buy(current_close + 1, 1) # Open long order
        trade_count = trade_count + 1 # Increase the number of transactions
    elif current_close < down_line: # If the price is less than the lower line
        exchange.SetDirection("sell") # Set transaction direction and type
        exchange.Sell(current_close-1, 1) # Open a short order
        trade_count = trade_count + 1 # Increase the number of transactions

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

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

पूर्ण रणनीति

पूर्ण रणनीति स्रोत कोड की प्रतिलिपि बनाने के लिए क्लिक करेंhttps://www.fmz.com/strategy/179805बिना विन्यास के बैकटेस्ट

अंत

उपरोक्त HANS123 रणनीति का सिद्धांत और कोड विश्लेषण है। वास्तव में, HANS123 रणनीति बाजार में प्रवेश करने के लिए एक बेहतर समय प्रदान करती है। आप बेहतर परिणाम प्राप्त करने के लिए लाभ लेने और हानि रोकने जैसे मापदंडों को अनुकूलित करने के लिए बाजार की अपनी समझ और लेनदेन की समझ के अनुसार या विविधता की अस्थिरता के अनुसार बाहर निकलने के समय में भी सुधार कर सकते हैं।


संबंधित

अधिक