量化数据

118 阅读4分钟

前言:什么是量化交易

量化交易是指以先进的数学模型替代人为的主观判断,利用计算机技术从庞大的历史数据中海选能带来超额收益的多种“大概率”事件以制定策略,极大地减少了投资者情绪波动的影响,避免在市场极度狂热或悲观的情况下作出非理性的投资决策。 -- 来源:百度百科解释 ****

量化交易的海量历史数据,是利用计算机来快速处理的,优势不言而喻:

  1. 处理速度极快,基本按秒甚至毫秒来衡量。
  2. 处理的数据是海量的,靠人工是不可能实现的。

PS:手动打开交易软件到进行交易需要至少需要十几秒

先从量化数据谈起

交易所产生的数据都是已经发生的事实,数据自然是历史数据,预测股价也是根据历史经验采取的行动;策略回测还是根据历史的数据进行测算评估的;哪怕你手动交易,每次买入的时候都是印在脑子里的历史经验所致。在这里一定要把历史数据这个概念牢记,因为金融市场没有新鲜事,历史总是在不断的重演,但历史也不代表未来

其次,交易数据是参与市场交易的人进行各种博弈产生的买卖订单数据。交易行为大多是对历史数据产生的应对行为。 再往大了说,人的行为也都是根据过去的一切做出的反应,这里就不深入研究讨论了。

最后,产生交易是需要买方和卖方两者,同一笔交易买卖双方的交易逻辑肯定不同。其中交易的逻辑,就是后面的策略依据

进行量化交易的最小数据范围

完成量化交易至少需要:交易标的的基本信息历史k线数据最新实时数据。有这三种数据基本就能完成绝大多数的量化策略。在进行量化交易的时候,你没有了交易软件的各种现成的提示,这时你需要把买入卖出的各种策略依据具体化,不能再使用概括性的语言衡量。

比如你需要根据MACD指标进行交易,MACD金叉的时候进行买入,死叉的时候进行卖出,那么你需要知道:MACD金叉是什么有什么作用,具体怎么计算等等这些,因为这些都需要你用代码编写出来。

如果你不清楚怎么实现相应的代码,可以使用AI完成,参考下文。

->【工具篇】AI辅助编写量化代码,效率提高10倍

开始编写简单例子

使用当日实时数据

  1. 固定价格X止盈
# 当价格达到某个价格时进行交易
if high >= X:
  sell()

PS:思考这里为什么不能使用最新价格判断?

  1. 当日股价冲高回落N%进行卖出
# 股价达到某个最高价后回落了
back_rate = (high - last_price )/pre_close * 100
if back_rate > N:
  sell()

使用k线数据

  1. 股价下破10日均线卖出
# 最新价格 低于 10日均线
if last_price < MA10:
  sell()

注: 为了防止假盘中假信号,一般选择邻近收盘进行交易, 需要进行交易时间限制

  1. 5日均线上穿20日均线买入
# 前一个交易日 MA5<MA20 最新交易日 MA5> MA20 
# MA是时间降序排列
if MA5[-2] < MA20[-2] AND MA5[-1] > MA[20]:
  buy()

相关行情数据接口,adata免费开源的数据库都有提供,adata基于大厂的数据接口,稳定性可以支持低频的量化交易,帮助前期了解学习量化的你。如果你有付费或者其他的数据源,您可以优先使用,。有了量化数据,量化交易之路已经完成了三分一。

关注公众号:向阳花策略