什么是量化交易?
顾名思义,就是借助数量化的方法进行交易。借助数量化的方法,进行技术面分析、基本面分析、流动性分析、宏观经济分析,都可以称之为“量化分析”。依托量化分析的结果进行交易,可以称之为“量化交易”。
量化策略既可以自动执行,也可以人工执行;从本质上说,交易机器人是一种软件程序,它直接与金融交易所进行交互(通常使用API获取和解释相关信息),并根据市场数据的解释发出买卖订单。量化策略是指使用计算机作为工具,通过一套固定的逻辑来分析、判断和决策。
一个量化系统,应该包含四部分,分别是数据、策略分析、执行、可视化四部分。
一、数据模块
数据模块,主要的功能是数据的采集和行情数据的实时传递。
二、策略分析
策略分析,从整体来说,应该是一个机器学习的AI。功能上来讲,包含函数指标生成器、关联性数据分析、机器学习、回测系统。
import torch.onnx
#转为ONNX
def Convert_ONNX(model):
#设置模型为推理模式
model.eval()
#设置模型输入的尺寸
dummy_input=torch.randn(1,input_size,requires_grad=True)
#导出ONNX模型
torch.onnx.export(model,#model being run
dummy_input,#model input(or a tuple for multiple inputs)
"xxx.onnx",#where to save the model
export_params=True,#store the trained parameter weights inside the model file
opset_version=10,#the ONNX version to export the model to
do_constant_folding=True,#whether to execute constant folding for optimization
input_names=['modelInput'],#the model's input names
output_names=['modelOutput'],#the model's output names
dynamic_axes={'modelInput':{0:'batch_size'},#variable length axes
'modelOutput':{0:'batch_size'}})
print("")
print('Model has been converted to ONNX')
if name=="main":
#构建模型并训练
#xxxxxxxxxxxx
#测试模型精度
#testAccuracy()
#加载模型结构与权重
model=Network()
path="myFirstModel.pth"
model.load_state_dict(torch.load(path))
#转换为ONNX
Convert_ONNX(model)