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

৬০ লাইন ত্রিভুজ হেক্সিং কৌশল (পাঠ্য)

লেখক:উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্ন, তারিখঃ ২০১৯-০৪-১৬ ১২ঃ৫৫ঃ২২
ট্যাগঃঅধ্যয়নহেজত্রিভুজাকার

ত্রিভুজ হেজিং শিক্ষার কৌশল

মূলনীতি

  • উদাহরণস্বরূপ A এক্সচেঞ্জঃ ETH_BTC বি এক্সচেঞ্জঃ ETH_USDT এক্সচেঞ্জ সি (বাস্তবে এক্সচেঞ্জ বি) অন্য একটি লেনদেনের জোড়া, যা যৌক্তিকভাবে C বলে মনে করা হয়): BTC_USDT

  • বি.সি. এক্সচেঞ্জ ট্রেডিং প্যারে ইটিএইচ_বিটিসি এবং এ এক্সচেঞ্জ হেজিংয়ের সমন্বয় করে; সুতরাং বিসি আসলে একটি এক্সচেঞ্জ অ্যাকাউন্ট।

স্পেস অপ্টিমাইজেশন

  • মুদ্রার ভারসাম্য।
  • হেকজিং ডিফারেন্স, ডায়নামিক ডিফারেন্স, প্রসেসিং রেট অনুযায়ী গণনা করা হয়।
  • এই ছবিতে দেখা যাচ্ছে যে,
  • অর্ডারটি পাতলা গভীরতা স্ক্যান করুন, সর্বোত্তম হেজিং গণনা করুন। ...

বাগ প্রতিক্রিয়া

  • ভুল হলে মন্তব্য করতে স্বাগতম।

// 交易对以 ETH_BTC , ETH_USDT , BTC_USDT 为例
// 教学策略,还有很大优化空间,例如:币平衡模块,根据手续费率控制对冲差价,硬搬砖等等。
function main () {                                                                                      
    if (exchanges[0].GetQuoteCurrency() != exchanges[2].GetCurrency().split("_")[0] || 
        exchanges[0].GetCurrency().split("_")[0] != exchanges[1].GetCurrency().split("_")[0]) {
        throw "交易所 交易对 配置错误。"
    }
    var marketSlideRate = 1 // 1.02
    var hedgeDiff = 0.0007
    var hedgeAmount = 0.1
    var isFirst = true
    var concurrenter = function (funcName, isWait, tasks, amounts) {
        for (var i = 0 ; i < exchanges.length; i++) {
            if (isFirst) {
                exchanges[i].acc = _C(exchanges[i].GetAccount)
                exchanges[i].initAcc = exchanges[i].acc
            }
            if (isWait) {
                var a = funcName == "GetTicker" ? exchanges[i].ticker = exchanges[i].tiR.wait() : exchanges[i].id = exchanges[i].trR.wait()
                if (funcName == "trade") {
                    exchanges[i].acc = _C(exchanges[i].GetAccount)
                }
            } else {
                var b = funcName == "GetTicker" ? exchanges[i].tiR = exchanges[i].Go(funcName) : exchanges[i].trR = exchanges[i].Go(tasks[i], -1, amounts[i], exchanges[i].GetCurrency())
            }
        }
        if (funcName == "trade" && isWait) {
            Log("BTC:", exchange.BTC = exchanges[0].acc.Balance + exchanges[2].acc.Stocks, "ETH:", exchange.ETH = exchanges[0].acc.Stocks + exchanges[1].acc.Stocks, "USDT:", 
                exchange.USDT = exchanges[1].acc.Balance + exchanges[2].acc.Balance, "#FF0000")
            LogProfit(exchange.USDT - (exchanges[1].initAcc.Balance + exchanges[2].initAcc.Balance) - 
                (exchanges[0].initAcc.Balance + exchanges[2].initAcc.Stocks - exchange.BTC) * exchanges[2].ticker.Last -
                (exchanges[0].initAcc.Stocks + exchanges[1].initAcc.Stocks - exchange.ETH) * exchanges[1].ticker.Last)
        }
        isFirst = false
    }

    while (1) {
        concurrenter("GetTicker", false)
        concurrenter("GetTicker", true)
        var tickerA = exchanges[0].ticker
        var tickerB = exchanges[1].ticker
        var tickerC = exchanges[2].ticker

        var tickerBC = {
            Buy : tickerB.Buy / tickerC.Sell,
            Sell : tickerB.Sell / tickerC.Buy,
        }

        if (tickerA.Buy - tickerBC.Sell > hedgeDiff && exchanges[0].acc.Stocks > 0.2 && exchanges[1].acc.Balance > 500 && exchanges[2].acc.Stocks > 0.03) {                          // Sell A , Buy BC (Buy B Sell C)
            concurrenter("trade", false, ["Sell", "Buy", "Sell"], [hedgeAmount, marketSlideRate * tickerB.Sell * hedgeAmount, tickerB.Sell * hedgeAmount / tickerC.Buy])
            concurrenter("trade", true)
        }
        if (tickerBC.Buy - tickerA.Sell > hedgeDiff && exchanges[0].acc.Balance > 0.03 && exchanges[1].acc.Stocks > 0.2 && exchanges[2].acc.Balance > 500) {                          // Buy A , Sell BC (...)
            concurrenter("trade", false, ["Buy", "Sell", "Buy"], [marketSlideRate * hedgeAmount * tickerA.Sell, hedgeAmount, marketSlideRate * hedgeAmount * tickerA.Sell * tickerC.Sell])
            concurrenter("trade", true)
        }
        Sleep(500)
    }
}



সম্পর্কিত

আরো

বিএনএমবিএনএমপ্রো: TypeError: main (__FILE__:45) এ null এর 'Sell' সম্পত্তি পড়তে পারে না প্রো: GetTicker: 429: {"msg":"অতি ঘন ঘন অনুরোধ.","কোড":"50011"}

বিএনএমবিএনএমহ্যালো, এটা চালানোর জন্য তিনটি মুদ্রা লাগবে, অথবা USDT থাকলে চালানো যাবে।

বিএনএমবিএনএমকেন পালাতে পারছ না?

fmzeroশিক্ষামূলক ভিডিও কোথায়?

উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্নতিন মুদ্রার প্রয়োজন।

উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্নঅনেক বার অনুরোধ!

বিএনএমবিএনএমহ্যালো, এটা চালানোর জন্য তিনটি মুদ্রা লাগবে, অথবা USDT থাকলে চালানো যাবে।

বিএনএমবিএনএমআপনি কি 0.03 সেট করতে পারেন? 0.07 এবং 1/1.02 এর মানে কি?

বিএনএমবিএনএমঠিক আছে, আমি আবার দৌড়াবো।

উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্নএফএমজেডের অফিসিয়াল গ্রুপ @মুনগুরুতে ভুলের খবর পাঠাতে পারেন।

বিএনএমবিএনএমআপনি কি আপনার মেসেঞ্জার ডাউনলোড করতে পারবেন?

উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্নএফএমজেডের অফিসিয়াল উইকিমিডিয়া গ্রুপ @ ডিনমিরো যোগ করুন।

বিএনএমবিএনএমআপনি কি আপনার উইকিমিডিয়া যোগ করতে পারেন?

উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্নএটি একটি সহজ কৌশল, যদি কোনও সমস্যা হয় তবে একটি নির্দিষ্ট প্রশ্ন পাঠাতে হবে।