রিসোর্স লোড হচ্ছে... লোডিং...

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ওয়েবসাইট> লগইন > ড্যাশবোর্ড > কৌশল গ্রন্থাগার > নতুন কৌশল > পাইথন ভাষা নির্বাচন করতে উপরের ডান কোণে ড্রপ-ডাউন মেনুতে ক্লিক করুন এবং কৌশল লিখতে শুরু করুন। নীচের কোডের মন্তব্যগুলিতে মনোযোগ দিন।

ধাপ ১ঃ কৌশলগত কাঠামো লিখুন

# 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.

ধাপ ২ঃ গ্লোবাল ভেরিয়েবল সংজ্ঞায়িত করুন

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কীওয়ার্ড রেফারেন্স।

তৃতীয় ধাপঃ তথ্য সংগ্রহ করুন

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ফাংশন K-লাইন অ্যারে পেতে. আপনি এছাড়াও K-লাইন অ্যারে নির্দিষ্ট পাস করতে পারেনPERIOD_M11মিনিট যখন ব্যবহারGetRecords function.

পরবর্তী ধাপটি হল সর্বশেষ মূল্য পাওয়া, যা বর্তমান মূল্য এবং উপরের এবং নীচের রেলগুলির মধ্যে অবস্থানের সম্পর্ক নির্ধারণের জন্য ব্যবহৃত হয়। একই সময়ে, কিনুন বা বিক্রয় ফাংশন ব্যবহার করে অর্ডার দেওয়ার সময়, আপনাকে নির্দিষ্ট মূল্যটি পাস করতে হবে। এছাড়াও, কে লাইন বারগুলির সংখ্যা ফিল্টার করতে ভুলবেন না, কারণ যদি কে লাইন বারগুলির সংখ্যা খুব কম হয় তবে একটি ত্রুটি হবে যা গণনা করা যায় না।

ধাপ ৪ঃ প্রসেসিং টাইম ফাংশন

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

৬ম ধাপঃ অবস্থান অর্জন করুন

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প্রকৃত পজিশনের তথ্য পাওয়ার ফাংশন, যার মধ্যে রয়েছেঃ পজিশনের দিকনির্দেশনা, পজিশনের লাভ ও ক্ষতি, পজিশনের সংখ্যা ইত্যাদি।

ধাপ ৭ঃ অর্ডার দিন

# 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 কৌশল বাজারে প্রবেশের জন্য একটি ভাল সময় প্রদান করে। আপনি বাজারের আপনার বোঝার এবং লেনদেনের বোঝার অনুযায়ী প্রস্থান সময় উন্নত করতে পারেন, অথবা বিভিন্ন অস্থিরতা অনুযায়ী ভাল ফলাফল অর্জনের জন্য মুনাফা গ্রহণ এবং ক্ষতি বন্ধ মত পরামিতি অপ্টিমাইজ করার জন্য।


সম্পর্কিত

আরো