what/clear量化合约交易软件开发源代码|现货合约跟单系统开发策略代码详情

简介: what/clear量化合约交易软件开发源代码|现货合约跟单系统开发策略代码详情

1、做多

  启动后按照设置好的开仓额度自动马上开多,用户可设置是否开仓加倍。当行情下跌后,机器人按照用户设置好的补仓倍数及满足补仓价差后进行补仓。用户可自定义补仓倍数/补仓价差(等于之前的补仓跌幅,因做空时为行情涨了补仓,因此这里叫价差)。

2、做空

  启动后,按照设置好的开仓额度自动马上开空,用户可设置是否开仓加倍。当行情上涨后,机器人按照用户设置好的补仓倍数及满足补仓价差后进行补仓。用户可自定义补仓倍数/补仓价差(等于之前的补仓跌幅,因做空时为行情涨了补仓,因此这里叫价差)。

  备注:目前做多做空只开通一倍(之后可以开通最高 10 倍,开通高倍率后,用户设置补仓价差不得高于倍数的 80%,因高倍率有爆仓涨幅或跌幅,如 10 倍,涨跌 10 个点即爆仓,设置补仓价差不得高于 8).与做现货一样,只是多了一个方向选择,因现货每次的买入都看涨,等于合约里面的做多,而合约可以在行情相对熊市时做空。让用户多一些选择。但因合约高杠杆倍数存在爆仓风险,用户谨慎使用。

3、多空

  启动后按照设置好的开仓额度多空同时建仓,上涨时做多单不断买入卖出实现盈利(止盈加回调平仓),此时做空采用补仓价差➕趋势补仓,下跌时做空单不断买入卖出实现盈利(止盈加回调平仓),此时做多采用补仓价差➕趋势补仓。

// base_dict.py

import sys

def price_lis(mktdata, key):

y_10_price = mktdata.groupby('mktdate', group_keys=False, sort=False)[key].apply(
    lambda x: -x.diff(-10).fillna(x - x.iloc[-1])
).values
return y_10_price

}

fees_dic = {

'IF00': 0.23/10000,
'rb00': 0.5 * 1/10000,
'ru00': -0.75,
'ag00': 0.05 * 1/1000 * 1/2 * 1,
'v00': -1 * 0.3,
'TA00': -2.1,
'CF00': -3.01,
'i00': 1/10000,
'sn00': -1.5,
'p00': -2.5 * 0.6,
'zn00': -3 * 0.5 * 0.5,
'eg00': -3 * 0.3,

}

instrument_dic = {

'IF00': {
    'price_tick': 0.2,
    'factor': 300,


def dateToContract(instrument, date):

dateList = instrument_dic[instrument]['date_list']
leadingList = instrument_dic[instrument]['leading_list']

if len(dateList) != len(leadingList):
    sys.exit('dismatch')

for ii in range(len(leadingList)):
    if dateList[ii][0] <= int(date) <= dateList[ii][1]:
        return leadingList[ii]

return False

import numpy as np

def clear_off_trading(df, axis, off_range=[(23000000, 90000000), # (230000000, 240000000),
(113000000, 133000000), (150000000, 210000000)]):

mask = np.zeros(len(df), dtype=bool)
for r in off_range:
    mask |= (df[axis] > r[0]) & (df[axis] < r[1])
df.drop(df.index[mask], axis=0, inplace=True)

if name == '__main__':

v00_main_contract = dateToContract(instrument='v00', date='20221020')
eg00_main_contract = dateToContract(instrument='eg00', date='20221020')
print("v00_main_contract: " + str(v00_main_contract))
print("eg00_main_contract: " + str(eg00_main_contract))

~~

相关文章
|
Python Windows
Python3+PyCharm环境的安装及配置
近期碰到有同学入门Python还不会安装并配置Python编程环境的,在这里做一期教程手把手教大家安装与配置使用(以 Python 3.9.9 以及 PyCharm 2021.3.1 为例)
1049 0
Python3+PyCharm环境的安装及配置
|
弹性计算 数据可视化 Ubuntu
基于阿里云ECS搭建FISCO-BCOS区块链
用ubuntu操作系统下的ECS搭建FISCO-BCOS节点,开发区块链网络
基于阿里云ECS搭建FISCO-BCOS区块链
|
人工智能 自然语言处理
FBI-LLM低比特基础大语言模型来了,首个完全从头训练的二值化语言模型
【8月更文挑战第22天】《FBI-LLM:通过自回归蒸馏从头开始扩展全二值化大语言模型》由Ma等学者发布于arXiv。该研究呈现了首个完全从头训练的全二值化大语言模型FBI-LLM,在不牺牲性能的前提下大幅降低计算资源需求。通过自回归蒸馏技术,FBI-LLM在多种任务上展现出与高精度模型相当的表现,为二值化模型的发展开辟新路径,并有望推动专用硬件的进步。研究者公开了所有相关资源以促进领域内的进一步探索。
236 10
|
设计模式 存储 人工智能
深度解析Unity游戏开发:从零构建可扩展与可维护的游戏架构,让你的游戏项目在模块化设计、脚本对象运用及状态模式处理中焕发新生,实现高效迭代与团队协作的完美平衡之路
【9月更文挑战第1天】游戏开发中的架构设计是项目成功的关键。良好的架构能提升开发效率并确保项目的长期可维护性和可扩展性。在使用Unity引擎时,合理的架构尤为重要。本文探讨了如何在Unity中实现可扩展且易维护的游戏架构,包括模块化设计、使用脚本对象管理数据、应用设计模式(如状态模式)及采用MVC/MVVM架构模式。通过这些方法,可以显著提高开发效率和游戏质量。例如,模块化设计将游戏拆分为独立模块。
904 3
|
运维 搜索推荐 大数据
云HIS系统源码,云医院信息系统:以患者为中心的云架构、云服务、云运维的信息体系
医院信息系统(HIS)正借助云计算与大数据技术,从局域网模式向互联网转型,实现医疗服务高效化、个性化。新型医疗卫生信息平台(HIP)构建了以患者为中心的云端服务体系,支持区域内资源统一管理与按需服务,促进医疗机构间的业务协同。系统具备一体化管理、标准化建设等特点,涵盖从门诊到住院全流程,包括挂号、收费、诊疗、药房药库管理等多个模块,支持数据整合与智能分析,助力医疗服务智能化升级与科学决策。
371 0
云HIS系统源码,云医院信息系统:以患者为中心的云架构、云服务、云运维的信息体系
|
存储 SQL Oracle
关系型数据库Oracle归档日志备份
【7月更文挑战第19天】
370 5
|
SQL 机器学习/深度学习 搜索推荐
SQL SERVER 转换失败
【6月更文挑战第25天】
312 1
|
前端开发 API Android开发
Flutter-自定义尺子
Flutter-自定义尺子
285 0
|
人工智能 安全 数据处理
阿里云认证攻略,考试注意事项
阿里云认证是现在ICT行业最具含金量的证书,成为了现在大多数人的选择,但是关于这个证书的详细信息,你了解多少呢?
648 0
阿里云认证攻略,考试注意事项