独立于交易开发平台的策略自动化引擎:ATSXL

Discussion in 'General Topics on Software and Data' started by espresso, Sep 21, 2013.

  1. 二进制和txt文本方式各有利弊的,但txt文本方式有个最大的优点是如果丢失了源代码或格式定义(二进制文件的格式定义)也可以利用原来的程序,也可以扩展应用和替换。:D:p只要能生成原txt格式(可读)就可以替换原来的,而通过读取txt文本格式信息(可读)也就可以替换、扩展增强原来的。这就是不少程序员喜爱txt文本格式的原因。:D:p

    而且过去类UNIX系统的程序员特别爱用“管道”(可以是文本也可以是二进制)功能(命令行、批处理)交换数据。
     
  2. 直接bin或者hex,不用自定义解码,因为本来是字节控制,所以分隔符也省了,而且因为是代码,所以字段说明也省了,当然字段选取需要精心策划,效果很好~当然用txt直接传或者直接传递txt内的明文信息我觉得也没问题,并不用担心安全问题。:)不过以前网速慢,通信局开口小,内存也没现在快,内存带宽也没现在大,现在应该无所谓了,以前是可以直接提高效率x00%:D
     
  3. 太好了,感谢 & 支持。
     
  4. 基本上就是binary, text, xml这三种吧,
    binary在网络和内存开销方面最小,但是不方便人读,
    xml可以支持复杂层次结构,fix协议就是基于xml的,号称是易读写,其实体积臃肿。:)
    text是最简单,各方面比较均衡。
     
  5. 数据量大了就用binary, 量小就用text.
    推荐中间件json, thrist, protobuf, 及速度最快的messagepack(msgpack). 自定义也不错.
     
  6. 多谢楼上各位关于 txt vs binary 的讨论,
    看来这个帖子能包含不少实际的心得和经验。:)

    另外一个问题,这个主要是和远程运行在VPS里面有关。
    自动或半自动交易系统运行在远程服务器上面的优势就不多说了,论坛里面有过讨论。
    相对于家里的PC,远程服务器上面安装中文语言包不是很方便。

    我自己用这个系统一直都是在VPS和EC2上面。
    所以,从界面到输出的日志都是英文的,不过都比较简单。
    如果运行在家里的PC的话, 则输入中文注释,说明什么的都没有问题。
    其实界面也是可以自己改成中文的,很简单,见过你就知道了。 :D
     
  7. txt 就是类似这样的句子吧
    TF1312 买开 92.225 20
     
  8. 对,就是这样,很简单吧。
     
  9. 我这之前也做了把ctp包一层简单的接口,以后再添加类似168的交易接口,还有纸面交易(调试或者统计使用),这样几乎程序就不用改。其实把这些接口按照规则写出来,做成dll,更灵活。
     
  10. Espresso 兄弟, 佩服你的毅力。感覺你花非常多時間在開發上。
    不如大家合作建立一個外匯套利系統。
    建議使用三角形策略(非常低風險)。理論上是可行的,現實上大型銀行也有資源和條件做到。
    需要多市場報價和快速(最好1 秒內成交),低點差的經紀人。當市場出現失效立即進場。
    國內有在做套利的大俠碼?
     
  11. 我一直都是边用边开发,平时系统运行时也不用怎么操心,
    有空就整合和优化一下这个系统,几年下来逐渐积累到现在这样。
    最近1,2年因为有了这么一个发布这个系统的想法,所以就动手做了,
    这一做可真是自己给自己找忙啊 :mad:,不过也算了自己一个心愿。
    发现我还是比较喜欢鼓捣交易平台地。:D

    外汇套利我没有做过,不过现在这个系统可以接的都是ECN类的,成交速度都很快,
    你的这个想法后面可以试试。
     
  12. 很多人都这么做了,实现不难,做内盘主要是为了手续费,有些是为了策略保密性需要。
    外盘不重要了,感觉现在做外盘有些OUT了。
     
  13. 什么才算和交易有关的? :)
    不用说4,5年前了,
    就是现在,请你给我和大家推荐一个现成的东西吧。
    能满足我1楼说的那些功能的一半就行。
    兄弟你不能只是到处批判,不给点建议吧?

    我其实最烦的就是自己造车轮,做重复的事情。
    如果我记得不错的话,你好像也是自己做的吧?
    要不也发个免费的给大伙儿用用。

    第二个问题看不懂,也对我毫无意义。
     
  14. 回49,53楼两位朋友,其实也不只是封装一下接口,
    或者说多搞几个接口打包扔给大家。
    我也没有功夫去搞个什么Y++语言写策略,写伪码啥的。
    那些对我来说都是再造车轮的事,花不起那个时间。

    我只是尽量用现成的东西,等完工后就放到网上,
    大家看到了,就比较容易理解。
     
  15. 老弟,我无论如何也没法把我的策略自动了,是否愿意帮个忙?我把策略给你,你看看能不能自动化。
     
  16. 强赞KISS!程序员过来的非常喜欢txt,因为有问题可以直接调试,省却了花在沟通处理上的时间。

    类比讲可以把每个模块当成工作流程中的某执行者,如果系统出了问题经理要追查原因,当然是人数越少越好,流程越简单越好。如果遇到某员工懈怠然而此时项目火烧眉毛,偏偏这家伙发生沟通障碍、偏执、神经错乱、将重要信息加密,经理岂不是要抓狂。:D 解决方案是你大爷的统统给我用的官方语言,谁不行就找他人顶替,或者经理亲自操刀上阵!
     
  17. Stanwell兄,等我把这边事做得差不多,可以帮你看看,不过我建议你可以先看一下自己的amibroker的代码(如果我记得不错,你是在用AB的..),那些关于连接IB,下单,进场/出场,单子管理的代码今后都可以注释掉 :),放在这个策略引擎里面,设置好规则,参数,条件等等就可以,不用写代码。你策略里面交易信号生成的代码还是放在amibroker里面,这样很省事。

    我可以帮你把交易信号处理,订单和头寸管理的部分放到这个策略引擎里面,你甚至都不用告诉我这些信号是怎么生成的。这就是我说的策略开发和交易系统开发分开,策略开发和部署分开的优越性。 :D
     
  18. 呵呵,就是这样子滴。forbbs最初的这个问题引发这么多共鸣倒是有点出人意料。:D
     
  19. 你看完了我的帖子没?是我要发个免费的给大伙儿用,你呢?
    还是把你自己喂好吧。
     
  20. 好呀,等你有空时帮我看看。我全是画线,不用指标;虽然有规律,但不知如何程序化。