4
ফোকাস
1271
অনুসারী

উত্থান-পতন তাড়া করার কৌশলের পাইথন সংস্করণ

তৈরি: 2020-01-11 14:49:08, আপডেট করা হয়েছে: 2024-12-12 20:57:43
comments   6
hits   7100

উত্থান-পতন তাড়া করার কৌশলের পাইথন সংস্করণ

উত্থান-পতন তাড়া করার কৌশলের পাইথন সংস্করণ

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

কৌশল কোড:

import time

basePrice = -1
ratio = 0.05
acc = _C(exchange.GetAccount)
lastCancelAll = 0
minStocks = 0.01

def CancelAll():
    while True : 
        orders = _C(exchange.GetOrders)
        for i in range(len(orders)) :
            exchange.CancelOrder(orders[i]["Id"], orders[i])
        if len(orders) == 0 :
            break
        Sleep(1000)

def main():
    global basePrice, acc, lastCancelAll
    exchange.SetPrecision(2, 3)
    while True:
        ticker = _C(exchange.GetTicker)
        if basePrice == -1 :
            basePrice = ticker.Last
        if ticker.Last - basePrice > 0 and (ticker.Last - basePrice) / basePrice > ratio :
            acc = _C(exchange.GetAccount)
            if acc.Balance * ratio / ticker.Last > minStocks :
                exchange.Buy(ticker.Last, acc.Balance * ratio / ticker.Last)
                basePrice = ticker.Last
        if ticker.Last - basePrice < 0 and (basePrice - ticker.Last) / basePrice > ratio : 
            acc = _C(exchange.GetAccount)
            if acc.Stocks * ratio > minStocks :
                exchange.Sell(ticker.Last, acc.Stocks * ratio)
                basePrice = ticker.Last
        ts = time.time()
        if ts - lastCancelAll > 60 * 5 :
            CancelAll()
            lastCancelAll = ts 
        LogStatus(_D(), "\n", "行情信息:", ticker, "\n", "账户信息:", acc)
        Sleep(500)

কৌশলের সরল বিশ্লেষণ

কৌশলটির নীতিটি খুব সহজ এটি কোনও সূচক ব্যবহার করে না এটি লেনদেনগুলিকে ট্রিগার করার জন্য ভিত্তি হিসাবে ব্যবহার করে এবং শুধুমাত্র একটি প্রধান প্যারামিটার রয়েছে৷ratioখোলার ট্রিগার নিয়ন্ত্রণ করুন।

দীর্ঘ ট্রিগার করুন:

if ticker.Last - basePrice > 0 and (ticker.Last - basePrice) / basePrice > ratio

বর্তমান মূল্য ব্যবহার করুন এবং ভিত্তি মূল্যের সাথে তুলনা করুন যখন বর্তমান মূল্য ভিত্তি মূল্যের চেয়ে বেশি হয় এবং মূল্য ছাড়িয়ে যায়ratio * 100 %, পেন্ডিং অর্ডারটি ট্রিগার করা হয় এবং একটি দীর্ঘ অর্ডার দেওয়া হয়। একটি অর্ডার দেওয়ার পরে, ভিত্তি মূল্য বর্তমান মূল্যে আপডেট করা হয়।

শর্ট অর্ডার ট্রিগার:

if ticker.Last - basePrice < 0 and (basePrice - ticker.Last) / basePrice > ratio

স্বল্প বিক্রয়ের নীতি একই। বর্তমান মূল্যকে ভিত্তি মূল্যের সাথে তুলনা করতে ব্যবহার করুন। যখন বর্তমান মূল্য ভিত্তি মূল্যের চেয়ে কম হয় এবং মূল্য অতিক্রম করেratio * 100 %যখন, মুলতুবি অর্ডারটি ট্রিগার করা হয় এবং খালি অর্ডার দেওয়া হয়। একটি অর্ডার দেওয়ার পরে, ভিত্তি মূল্য বর্তমান মূল্যে আপডেট করা হয়।

প্রতিটি অর্ডারের জন্য অর্ডারের পরিমাণ উপলব্ধ তহবিলের উপর ভিত্তি করে।ratio * 100 %。 যদি না গণনাকৃত অর্ডার ভলিউম প্যারামিটার দ্বারা সেট করা ন্যূনতম ট্রেডিং ভলিউমের চেয়ে কম হয়minStocks, অন্যথায় একটি অর্ডার রাখুন।

এটি কৌশলটিকে মূল্যের পরিবর্তনগুলি অনুসরণ করার অনুমতি দেয় যা বৃদ্ধি তাড়া করে এবং পতনকে হত্যা করে।

ব্যাকটেস্ট টেস্টিং

ব্যাকটেস্ট করার সময়সীমা প্রায় এক বছর। উত্থান-পতন তাড়া করার কৌশলের পাইথন সংস্করণ

চলমান ফলাফল: উত্থান-পতন তাড়া করার কৌশলের পাইথন সংস্করণ

উত্থান-পতন তাড়া করার কৌশলের পাইথন সংস্করণ

সম্প্রতি, কিছু ব্যবহারকারী বলেছেন যে পাইথনে তুলনামূলকভাবে কম কৌশল রয়েছে, তাই আমি ভবিষ্যতে পাইথনে লেখা আরও কৌশল শেয়ার করব। কৌশল কোডটিও খুব সহজ, যা উদ্ভাবক এবং নতুনদের জন্য পরিমাপ শিখতে খুব উপযুক্ত। কৌশল ঠিকানা: https://www.fmz.com/strategy/181185

কৌশলটি শুধুমাত্র রেফারেন্সের জন্য, ব্যাকটেস্টিং এবং পরীক্ষার জন্য আপনি যদি আগ্রহী হন তবে আপনি অপ্টিমাইজ এবং আপগ্রেড করতে পারেন।