【零基础】极星量化小技巧:启动时自动轮换合约

一、前言

  很多童鞋苦恼于要交易的合约很多,每天早上启动量化是个很痛苦的工程。其实这是个非常容易解决的问题,python的扩展性可以是无限的,限制的只是你的相像力。

二、实现

  其实就是很简单的文件读取和写入。

  1)在电脑上的任何盘创建两个文件CONTRACT1.CSV、CONTRACT2.CSV

  注意不能在C盘的根目录下,必须放在文件夹里面。我放在了C盘的CONTRACT目录下

  

 

   2)在CONTRACT1.CSV中录入你需要的合约代码

  注意是一行一个,而且要放在第一列

  

 

   3)在init中使用getContractID获取合约代码

  

 

  

 

三、运行

  运行后,你会发现每次启动都会从CONTRACT1.CSV中取一个合约代码,而后将这个合约添加到了CONTRACT2.CSV。

  如果CONTRACT1.CSV中的合约被取完了,那么CONTRACTID变为None,所以程序会报错。

  到下一次你又要全部重启一遍的时候,你可以直接将代码中的文件名互换一下,比如:

  

  就是如此这般简单。

四、回顾

  一个简单的文件读写就解决了很多童鞋的一个心病,但是细心的童鞋会发现这里还有个问题,就是我们每个合约使用的周期和订阅的历史数据不一定一样啊怎么办?

  其实还是很简单的,这里做些简单的提示:

  1)CSV文件中数据每一行的保存格式为:字符1,字符2,字符3

  2)字符串可以用split分割成list

  示例代码:

https://share.weiyun.com/5kTV0FD

 

posted @   布兰姥爷  阅读(607)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
历史上的今天:
2018-04-21 linux下的cacti安装(centos7)
点击右上角即可分享
微信分享提示