当时写了MT4接入A股数据咸鱼网二手交易平台大要正在一年前,当时写了MT4接入A股数据,原来性质上是为了操纵MT4/5成熟的回测境况和营业境况以及好用的图外操作,用于琢磨。这一年中也陆延续续的考试了杜卡的JFroex,cTrader。这几个产物,部分以为都是营业软件中很是 杰出的。MT4/5和JFroex比拟,上风正在于邦行家使者较众,社区资源也相比照较足够。劣势正在于其DSL的策画上没有变成和暂时主流编程说话相成婚的策画,编写起来较为繁杂,念援用开源的类库须要行使dll,而且生态比力虚亏,自带的开采器材也比力弱。就算是用习性的vim或者vscode实行相应的装备,然后自身也写了联系的插件用起来确实依旧不如意,没有社区的力气要偷懒起来没有那么容易。有一段时期我就直接socket把数据发到python,然后用mt5供应的python接口拿数据出来运算,再往内里丢单据,牢固性日常,很是依赖警报和日记排错(这里也许是由于我有个别代码是正在c++中竣工的出处。和JFrox比拟,他的图外流程性也是远正在其之上的。
JFroex是纯java编写,有供应一个离开自身运用的sdk,是个maven项目,除了收集境况局限,正在各方面都很是不错。自身java的生态就很是棒,不像mt5须要借助windows-api内里的socket或者自身编译zmq来和其他说话通信来便捷的告竣效用。JFroex-SDK上天生脱机图外,回测申诉一条龙写起来也很是的如意,收集缘由的话配置一下缓存目次也能管理,开采器材有IDEA更是助纣为虐。而且熟谙虚拟机底层的话,实行少少hook操作和抓包把任何营业种类的数据灌进去也是没有题目的,A股当然也不正在话下,然则这么做仅限于部分琢磨。
上面我是用杜卡官网的demo基于swing界面做了少少纯粹的篡改,用于部分回测足够了。java的牢固性足够好,杜卡供应的史乘数据足够众,计谋放正在云办事器上面跑也是挺定心的,最少不会像MT4/5那样操心自身对指针和内存不熟谙导致轨范溃散,这点也是我半道落发轨范的出处,看待c/c++较为不熟谙。
这几款杰出的产物的目标和重心多数正在营业上,而不是琢磨上。平台的性质便是让营业者持续实行营业才气给他们带来丰盛的利润这点无可厚非。然则正在琢磨上,不得不说给初初学槛的人变成了不小的膺惩和门槛。邦内正在量化琢磨上也有少少杰出的社区比方vn.py和tushare。两个社区都很是活泼,然则正在图形化上相对Tradingview依旧比力弱的,我当时的念法是一份有史乘数据的csv文献和一个趁手的编程说话和联系的金融常识,就能够发轫纯粹的量化琢磨。
然则每次看到能够拿来就用的上述平台器材就犯懒,直到我真正无法容忍洪量的时期用于查对平台供应给我的舛讹音信去让我篡改我的代码。我裁夺自身告竣一套纯朴用于琢磨的框架。当我真的拿出一天的时期来细细研究事后,原来我发明任何编程说话加上史乘数据都能够让一个轨范员告竣出适合自身的探寻器材。花了几天时期当我写完之后,发明这通盘并不是当初所念的那么麻烦
接下来,咱们用python纯粹的描写一下个中的逻辑,假设有人面对和我相似困局,历程一段时期的研究和编程之后,都能够告竣让自身如意的探寻器材,这里我只依赖了少数几个python的开源库,比方pandas,arrow(用于时期统治的)
然后正在初始化竣工之后,实行部队的出栈操作,把一根K线数据或者Tick代价推入计谋中
计谋概括类内里应当挂载着订单音信和账户音信,这里我纠结了一段时期这些音信是否要和其他平台相似放正在大的墟市容器中,然则其后我念这些东西性质依旧计谋正在处理的,因而把他行为计谋的一个别。一发轫的期间咱们不不妨须臾就实行众个计谋并行的琢磨,这个计谋的概括类担当处理订单,和账户联系的逻辑。联系代码被我隐去,遵循注解告竣起来并不难
到这里,咱们的回测框架原来依然大致竣工了。从上面能够看出,当SimpleMarket.start的期间, 咱们自身告竣一个StrategyBase的子类,而且将其挂载正在Market上,就会被每个onBar触发,当计谋了局的期间,咱们就能够对咱们的订单实行明白
可视化是为了助助咱们从图形上来辞别和琢磨少少东西,python的matplotlib和其他说话都有相对应的库。然则matplotlib搞这个真的太累了。因而我依旧选了js。终于h5搞起这些图外来依旧终于轻松的,资金弧线和少少常用弧线能够用echart,highchart等告竣。K线图能够用anystock,tradingview来告竣,正在上面绘制矩形或者画个目标什么的依旧很容易的。这里我用的是flask行为容器,tradingview行为前端来告竣的
当可视化竣工之后,咱们能够操纵之前计谋中的许众音信,提出许众假设。最纯粹的拿决定树来说,咱们能够遵循种种收罗到的张望变量为根源,订单是否节余为方针.操纵这些张望变量的相对音信熵来开掘个中的逻辑。
这大要便是我心中的看待墟市的探寻的途径,也许万分不可熟,和大的机构比拟堪称简陋。正在这个时期的墟市中,我有幸能听到许众闭于墟市确定性的外面。也有百年一人如此的长辈甘于分享自身的思念,当然尚有许众不承诺大白姓名的长辈教给了我许众许众闭于认知寰宇,认知自身的思念,以及认知的分别角度和分别主意。这些都是勉励我持续往下走下去的力气,让我学会去研究。生气正在未来,咱们都可认为这个行业做出一份自身功勋