Strategi jangka panjang frekuensi tinggi

Penulis:Berhentilah, Machen., Tarikh: 2020-05-12 21:55:43
Tag:

Panduan Strategi

Bitcoin (BTC)

Data perbezaan harga: BTC Permanen - BTC Triwulan (dihilangkan pemeriksaan kointegrasi)

Siklus urus niaga: 1 minit

头寸匹配:1:1

Jenis urus niaga: berlainan jenis

Syarat pembukaan perbelanjaan yang berlebihan: Jika akaun semasa tidak memiliki saham dan perbelanjaan < (tingkat perbelanjaan jangka panjang - ambang nilai), maka perbelanjaan berlebihan.

Syarat penukaran harga kosong: Jika akaun semasa tidak memiliki saham dan harga tidak > (tahap harga yang berbeza jangka panjang + ambang nilai), maka harga kosong; iaitu: jual BTC secara kekal, beli BTC suku.

Syarat untuk melakukan perpaduan harga yang lebih tinggi: jika akaun semasa memegang BTC yang lebih tinggi dan memegang BTC yang lebih rendah pada suku, dan perbezaan harga > paras perpaduan jangka panjang, maka perpaduan harga lebih tinggi; iaitu: menjual BTC yang lebih rendah secara berterusan, membeli BTC yang lebih rendah pada suku.

Syarat untuk melakukan pembiayaan perbezaan harga kosong: Jika akaun semasa memegang BTC yang kosong secara kekal dan memegang BTC yang kosong beberapa suku, dan perbezaan harga < tahap perbezaan harga jangka panjang, maka perbezaan harga kosong.

Contohnya:Jika BTC kekal dan BTC pada musim itu mempunyai perbezaan harga yang kekal pada masa yang lama sekitar 35; jika perbezaan harga mencapai 50 pada satu hari, kita menjangkakan perbezaan harga akan kembali ke 35 atau di bawah pada masa akan datang; maka kita boleh menjual BTC kekal dan membeli BTC pada musim itu untuk menghapuskan perbezaan harga ini; sebaliknya, perhatikan bahawa BTC kekal dan BTC pada musim itu akan selalu kembali ke hampir 0 (penghantaran tamat tempoh), jadi perbezaan adalah keutamaan apabila ia positif, melakukan perbezaan harga kosong, dan melakukan perbezaan harga lebih tinggi apabila ia negatif.

Hubungan

:point_right: Jika anda berminat dengan strategi ini, sila +V:Irene11229 (Klik laman web saya, saya akan terus mengemas kini lebih banyak strategi dan juga mendapatkan data analisis pasaran dari beberapa bursa utama)


#!/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)

Lebih lanjut

PengambilAdakah anda mengatakan sebaliknya, harga kekal adalah hampir sama dengan harga sebenar, harga yang lebih besar, pasti harga suku tinggi, bagaimana boleh membeli suku, sepatutnya membeli suku, menjual suku?