CTP期货程序化交易开发讲解C++版 2024 四

第五节  界面开发

开发CTP程序化交易有一个基本的要求,就是代码运行要高效,快速,所以,我们这里没有复杂的界面,登陆,主界面都在一个界面上,单界面的程序,我们现在一步步的来进行。

  • 如图,用VS2019 系统自动生成一个单界面的程序框架,按下图一步步的操作

到止,我们得到了一个单界面的对话框程序,现在我们进行第二步操作,把需要的控件拖到这个界面上来,完成人机界面的大概布局。

  • 这一小节,我们布局主界面的控件

如图,有些控件是不可见的,设计的时候可以看到,运行的时候是看不到的。

比如:行情前置地址等这一排控件,还有右下角的那几个按钮。这是为了设计的方便,更是为了让C++ 基础稍微差一点的读者看得更加明了,一目了然,基础好一点的读者,可以直接用变量和函数取代这些内容,也可以在此源码的基础上自行修改。

现在简单介绍一下这些控件:

  1. 登入\退出:一个Group-box Control 控件作为这个区域的分界;在这个区里有 Static Text 控件作为标签,比如 账号,密码 这两个标签;还有Edit Control 控件作为输入账号、密码的接收控件;两个 Button 按钮分别是登入、关闭。旁边还有两个 Radio Button 按钮,这个的作用是用来切换CTP的两个服务器的前置地址,因为,这两个服务器,不是时时刻刻都开放的,有时这个可以用,有时那个可以用,所以写了这个功能,方便调试程序等。
  2. 订阅\退订\查询:这个区域里,只有几个 Button 和一个 Edit  Control 控件,分别是 查持仓数据,查挂单数据,订阅,退订,输入合约代码的接收框控件。
  3. 报单\撤单\策略:这个区域里,除了上述介绍的控件外,增加了几个单钩选控件 Check Box 和 Radio Button 控件。主要功能是为下单等操作提供参数的,比如 对价,钩选后,程序会根据买多还是卖空从最新的深度行情数据中获取相对应的价格填写在旁边的价格输入框中。
  4. 消息区域:这里用了一个 Listbox Control 控件,用来把操作过程中的一些信息列出来,供操作者参考,比如:登陆成功,密码错误,连接超时,成交通知,挂单通知等等。
  5. 行情数据:这里用了一个 List Control 控件用来列示深度行情数据,这个地方需要注意一点,要把这个控件的 视图 属性改为 Report ,其它地方不用改。
  6. 下面的两个区域:持仓明细,挂单明细 跟 第 5 点是一样的,这里不再重复介绍。
  7. 主界面的右边还有一些按钮和输入框,这些是运行时不可见的,为了开发及读者看代码时方便而用了控件,并把控件的功能写在控件上或旁边的标签上,读者可以把这些控件以变量或函数的方式重写一下,基本上只需要把里面的代码复制过来就可以了。
  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Linux环境下使用C语言来完成ctp期货量化交易系统,首先需要安装相应的开发工具和环境,例如gcc编译器和相关的开发库。然后,可以通过ctp官方提供的API来进行开发。 接下来,需要编写C语言程序来连接ctp交易接口,包括登录行情服务器、连接交易服务器、订阅行情数据、下单交易等相关功能。在编写程序时,需要充分了解ctp交易接口的相关文档和示例代码,以便正确地调用接口函数。 在交易系统的开发过程中,需要考虑到错误处理、数据处理、交易策略的实现等方面。对于错误处理,可以通过编写日志来记录程序的运行情况,以便排查错误。对于数据处理,可以通过编写算法来对行情数据进行分析和处理,以支持量化交易策略的实现。 在编写交易策略时,需要根据具体的量化交易策略来实现相应的买卖逻辑,可以通过编写条件判断语句和相关算法来实现交易决策。 最后,在完成ctp期货量化交易系统的开发后,还需要进行充分的测试和优化。通过模拟交易和回测来验证交易系统的稳定性和盈利性,通过优化代码和算法来提高系统的性能和效率。 总之,在Linux环境下使用C语言完成ctp期货量化交易系统的开发,需要充分的了解ctp接口和API,编写对应的功能程序,实现量化交易策略,并进行测试和优化,以确保系统的稳定性和盈利性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值