My语言策略实时推送仓位变化到手机App与微信
2021-11-19 15:59:43
  • 0
  • 0
  • 0

一、摘要

随着量化交易策略的不断完善,用户对于持仓变化的实时推送要求也越来越高,比如:Web在线日志、手机App、微信等,都需要将账户持仓发生的变化实时地、主动地传送到浏览器、手机等等。为此本文针对发明者量化(FMZ.CN)My语言策略,来实现将仓位实时推送到手机App和微信。

本文完整的源代码请猛戳 https://www.fmz.cn/strategy/329988 ,纸上得来终觉浅,建议大家动手敲敲代码。

二、演示交易策略

为了便于演示,本文将引用之前的威廉W%R交易策略,策略链接地址为:https://www.fmz.cn/digest-topic/7219 该策略逻辑由威廉值和均线共同组成,完整的策略和回测配置,可以点击该链接获取,下面是这个策略的代码:

三、My语言语言增强

发明者量化(FMZ.CN)的My语言是JavaScript语言的进一步封装,旨在帮助量化初学者更好的入门,My语言有语法简洁的特点,可以应付一些简单的策略逻辑,但面对一些复杂的策略就会捉襟见肘。为此发明者量化在My语言的基础之上,推出了语言增强功能。如下面的代码例子:

如上面的代码所示,语言增强功能可以让My语言与JavaScript语言混合编程。

其中:

1、scope对象

scope对象,可以添加属性,并赋值匿名函数给属性。在麦语言代码部分就可以调用这个属性引用的匿名函数。

2、scope.get_locals('name')

该函数可以获取My语言的变量,从而实现My语言和JavaScript语言实现交互。

四、推送仓位变化

在My语言策略中,BKVOL函数可以获取买开信号手数,也就是当前的多头持仓。SKVOL函数可以获取卖开信号手数,也就是当前的空头持仓。那么我们通过BKVOL减去SKVOL,就可以计算出当前仓位变化状态。如下面的代码所示:

在上面的代码中,我们把威廉W%R交易策略和推送仓位变化功能放在一起,从而实现交易策略下单交易与仓位变化实时同步,并推送到手机App和微信上面。

五、实盘测试

接下来我们运行一个实盘验证这个功能,创建实盘选择商品期货,品种设置为橡胶ru2201。

1、信号触发,web端日志

2、信号触发,手机App消息推送

3、信号触发,微信信息推送

六、总结

以上我们通过一个简单的My语言威廉W%R交易策略,配合My语言中的语言增强模块所开发的消息推送模块,从而实现策略实时推送仓位变化到手机App与微信。该模块代码可以附加到任何My语言策略中,实现仓位变化推送到手机App与微信,并且针对不同的场景推出多种推送类型,满足您的个性化推送需求。

 
最新文章
相关阅读