उच्च आवृत्ति दीर्घकालिक सूट की रणनीति

लेखक:बालो, छोटे जादूगर।, दिनांक: 2020-05-12 21:55:43
टैगः

रणनीतिक विवरण

बिटकॉइन (BTC)

मूल्य अंतर डेटाः बीटीसी टिकाऊ - बीटीसी तिमाही ((सहयोगिता परीक्षण को छोड़ दिया)

लेनदेन चक्रः 1 मिनट

头寸匹配:1:1

लेन-देन का प्रकारः एक ही किस्म के पार अवधि

ओवरडिसपेंडिंग की शर्तेंः यदि वर्तमान खाते में कोई स्टॉक नहीं है, और कीमत में अंतर < (लंबे समय के मूल्य अंतर का स्तर - थ्रेशोल्ड) है, तो ओवरडिसपेंडिंग की शर्तें हैं। यानीः BTC को स्थायी रूप से खरीदें, BTC को तिमाही में बेचें।

खाली दांव लगाने की शर्तेंः यदि वर्तमान खाते में कोई स्टॉक नहीं है, और मूल्य अंतर > (लंबे समय के मूल्य अंतर के स्तर + थ्रेशोल्ड) है, तो खाली दांव लगाने की शर्तें हैं; यानीः BTC को स्थायी रूप से बेचें, BTC को तिमाही खरीदें।

ओवरडिफरेंस ब्रोचिंग की शर्तेंः यदि चालू खाते में BTC के स्थायी रूप से कई ऑर्डर हैं, और BTC के त्रैमासिक रिक्त ऑर्डर हैं, और मूल्य अंतर > दीर्घकालिक मूल्य अंतर का स्तर है, तो ओवरडिफरेंस ब्रोचिंग है। यानीः BTC को लगातार बेचें, BTC को त्रैमासिक रूप से खरीदें।

एक खाली खाता बनाने की स्थितिः यदि वर्तमान खाते में BTC के स्थायी खाली ऑर्डर हैं, और BTC के कई तिमाही ऑर्डर हैं, और मूल्य अंतर <लंबे समय के मूल्य अंतर का स्तर है, तो एक खाली मूल्य अंतर है। यानीः BTC को स्थायी रूप से खरीदें, BTC को तिमाही रूप से बेचें।

उदाहरण के लिए.........................................................................

संपर्क करें

:point_right: यदि आप इस रणनीति में रुचि रखते हैं, तो कृपया +V:Irene11229 (मेरे पृष्ठ पर क्लिक करें, मैं लगातार अधिक रणनीतियों को अपडेट करूंगा, और कुछ प्रमुख एक्सचेंजों से बाजार विश्लेषण डेटा भी प्राप्त करूंगा)


#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import json
import time

from kumex.client import Trade, Market


class Hf(object):

    def __init__(self):
        # read configuration from json file
        with open('config.json', 'r') as file:
            config = json.load(file)

        self.api_key = config['api_key']
        self.api_secret = config['api_secret']
        self.api_passphrase = config['api_passphrase']
        self.sandbox = config['is_sandbox']
        self.symbol_a = config['symbol_a']
        self.symbol_b = config['symbol_b']
        self.spread_mean = float(config['spread_mean'])
        self.leverage = float(config['leverage'])
        self.size = int(config['size'])
        self.num_param = float(config['num_param'])
        self.trade = Trade(self.api_key, self.api_secret, self.api_passphrase, is_sandbox=self.sandbox)
        self.market = Market(self.api_key, self.api_secret, self.api_passphrase, is_sandbox=self.sandbox)

    def get_symbol_price(self, symbol):
        ticker = self.market.get_ticker(symbol)
        return float(ticker['price'])


if __name__ == '__main__':
    hf = Hf()
    while 1:
        # ticker of symbols
        price_af = hf.get_symbol_price(hf.symbol_a)
        price_bf = hf.get_symbol_price(hf.symbol_b)
        # position of symbols
        position_a = hf.trade.get_position_details(hf.symbol_a)
        position_a_qty = int(position_a['currentQty'])
        position_b = hf.trade.get_position_details(hf.symbol_b)
        position_b_qty = int(position_b['currentQty'])
        # interval of price
        new_spread = price_af - price_bf
        print('new_spread =', new_spread)

        if position_a_qty == position_b_qty == 0 and new_spread < (hf.spread_mean - hf.num_param):
            buy_order = hf.trade.create_limit_order(hf.symbol_a, 'buy', hf.leverage, hf.size, price_af + 1)
            print('buy %s,order id =%s' % (hf.symbol_a, buy_order['orderId']))
            sell_order = hf.trade.create_limit_order(hf.symbol_b, 'sell', hf.leverage, hf.size, price_bf - 1)
            print('sell %s,order id =%s' % (hf.symbol_b, sell_order['orderId']))
        elif position_a_qty == position_b_qty == 0 and new_spread > (hf.spread_mean + hf.num_param):
            buy_order = hf.trade.create_limit_order(hf.symbol_a, 'sell', hf.leverage, hf.size, price_af - 1)
            print('sell %s,order id =%s' % (hf.symbol_a, buy_order['orderId']))
            sell_order = hf.trade.create_limit_order(hf.symbol_b, 'buy', hf.leverage, hf.size, price_bf + 1)
            print('buy %s,order id =%s' % (hf.symbol_b, sell_order['orderId']))
        elif position_a_qty > 0 and position_b_qty < 0 and new_spread > hf.spread_mean:
            buy_order = hf.trade.create_limit_order(hf.symbol_a, 'sell', position_a['realLeverage'],
                                                    position_a_qty, price_af + 1)
            print('sell %s,order id =%s' % (hf.symbol_a, buy_order['orderId']))
            sell_order = hf.trade.create_limit_order(hf.symbol_b, 'buy', position_a['realLeverage'],
                                                     position_a_qty, price_bf - 1)
            print('buy %s,order id =%s' % (hf.symbol_b, sell_order['orderId']))
        elif position_a_qty < 0 and position_b_qty > 0 and new_spread < hf.spread_mean:
            buy_order = hf.trade.create_limit_order(hf.symbol_a, 'buy', position_a['realLeverage'],
                                                    position_a_qty, price_af - 1)
            print('buy %s,order id =%s' % (hf.symbol_a, buy_order['orderId']))
            sell_order = hf.trade.create_limit_order(hf.symbol_b, 'sell', position_a['realLeverage'],
                                                     position_a_qty, price_bf + 1)
            print('sell %s,order id =%s' % (hf.symbol_b, sell_order['orderId']))

        time.sleep(60)

अधिक

लेनेवालाक्या आप इसके विपरीत कह रहे हैं, स्थायी कीमतें लगभग वास्तविक कीमतों के बराबर हैं, कीमतें बहुत अधिक हैं, निश्चित रूप से तिमाही उच्च कीमतें हैं, कैसे तिमाही खरीदें, तिमाही खरीदें, स्थायी खरीदें, तिमाही बेचें?