最近想给自己的交易程序添加一些自动化功能,将可转债的筛选过滤与实盘操作全部交给机器运行。 之前关于实时价格和K线数据的获取都是用的自己写的爬虫模块,稳定运行没啥问题(一共实现了四个接口,两个日用,两个备用)。可转债这块我犯了次懒,没有再写爬虫,而是导入了Akshare这个金融数据包。结果就是因为这个包的引用,导致程序后来打包编译的时候问题不断。 很多特别细节的东西已经记得不是太清楚了,大致出现的问题和解决如下: 所有的开发测试都完成后,准备打包成exe,部署到我的实盘交易机器上。编译的时候没有问题,但是运行exe时…

2023年2月18日 2条评论 206点热度 0人点赞 阅读全文

我感觉这个问题算是用pysimplegui写界面时候一个容易遇到坑,记录一下。 对于多窗体应用,如果在生成子window之前,其所用的layout单独在别的模块中定义,并在生成window时进行引用,那么这个子window在调用close后,想要重复显示的时候就会报错,提示layout不能reuse。 解决这个问题的方式是不要直接引用layout,在调用window之前予以即时的layout变量定义,然后传入window。这样可以解决问题,但不好的地方是会造成代码冗长,一个合理的解决方案是在其他模块中定义函数,然后…

2023年2月12日 0条评论 172点热度 0人点赞 阅读全文

媳妇是做文字工作的,比较忙,经常要写大量的文字稿,想到最近爆火的ChatGPT,感觉是个帮手,于是写了个小工具调用其API帮助媳妇完成工作。在博客上分享一下,如下图: 在界面中暴露的主要是一些可以影响输出的参数,具体含义详见如下地址中的官方说明: https://platform.openai.com/docs/api-reference/completions/create API-Key这个参数是需要自己注册获得或者去某宝上购买的,值得注意的是,某宝上购买的账户中默认有18美刀的体验金,ChatGPT是个付费A…

2023年1月31日 2条评论 459点热度 1人点赞 阅读全文

我之前开发用的虚拟环境已经很久没有变动动过了,最近筹划写点新的功能模块,需要用到一些新的第三方包,我想测试一下这些新的包安装到venv中后,用pyinstaller打包后的exe文件尺寸有多大变化,随后发现问题。 在向venv环境添加了新包后,用pyinstaller打包程序时出现错误信息:Fatal error in launcher: Unable to create process using '"D:\dev\Qthinker.venv\Scripts\python.exe" "D:\Qthinker.ve…

2023年1月26日 0条评论 423点热度 0人点赞 阅读全文

最近发现新版的同花顺交易端界面有变化,其界面上的Static序号有变化,重新研究了一下,这里做个备忘。 因为过去写过一个叫做Broker的类,其中的某些方法在判断可用资金和仓位上需要读取对应控件的值,具体可以看这篇博文— 《仓位管理类的实现和遇到的坑》。之前的交易界面是这样的: 新版的交易界面是这样的: 之前程序中需要读取的Static对应序号如下: 总资产 :Static12 持仓市值:Static11 持仓盈亏:Static14 可用金额:Static6 新版交易界面对应的Stactic序号变化如下: 总资产 …

2022年12月2日 0条评论 241点热度 2人点赞 阅读全文

在实盘策略上,我目前所有持仓标的应用的都是网格策略。在市场处于震荡期间,网格无疑是最好的交易策略之一。而对于网格交易来讲,最需要关注的是仓位,确保在市场出现调整时仓位按照预期进行控制,并且有资金可以加仓。除去仓位管理这个工作,我不太关心明天市场是涨是跌,因为只要有波动性在就可以稳定赚取差价收益,积少成多。 过去在仓位控制上,没有通过代码进行自动化的管理,基本都是靠盘前主观预判后,手动开启或关闭策略类实例的买入或者卖出权限实现。周末写了一个类,完善了之前在仓位管理上存在的不足。 之所以过去没有做仓位管理的自动化处理,…

2022年8月29日 0条评论 271点热度 5人点赞 阅读全文

从研究量化交易这个事开始,断断续续写过许多策略,但是从实盘来讲,用的最多的还是网格策略。原因如下: 1、网格交易赚取的是波动收益,符合当下市场行情特征。 2、网格交易在市场下行阶段分批加仓,上行时分批减仓。低位重仓,高位轻仓,正向收益预期强。 3、网格交易不需要市场有大行情,只要有波动性在,就可以积累差价收益。 实盘系统重构后,增加了对每笔单子利润的记录表格。从6月初开始用重构系统实盘交易以来,通过统计累计的网格利润并对比本金总量,以利润锁定的效率上看,如果能长期保持在这个水平,预期长期年化在15%-20%之间。 …

2022年7月29日 0条评论 361点热度 3人点赞 阅读全文

周末写了一个策略装入引擎,本意就是进行测试,没指望盈亏能有多少。结果周一这个新的策略引发了一个之前没有发现的bug,造成今天引擎整体不能正常工作,上着班还得盯盘手动下单,狼狈的很。 bug出在止损的计算上,因为之前跑的都是网格,不设止损,所以一直没有触发。新策略需要计算动态成本并设定止损线,bug就出在动态成本的计算上,成本计算的函数需要传入成本类型,但是在策略类中忘记了传入从而引发异常。 早上在外办事,收到微信消息,新策略的买入信号触发了,还挺高兴,结果上午办完事出来一看,市场跌了个稀里哗啦,但是网格单却没出来,…

2022年7月11日 0条评论 249点热度 1人点赞 阅读全文

上个月市场行情好,可转债日内T0也是做得风生水起。进入7月以来,T0的胜率明显不高,连续亏损后准备暂时放弃日内T0可转债,转而增加两个高密度网格可转债标的。 用账户的剩余资金做日内T0可转债主要目的还是尽量提高资金利用率,尽量不使资金空转。比起盯着5分钟K线和分时图,做低价债的网格要省心很多。目前的想法是用高密度网格做低价债,准备在130-100之间,用-0.3%买入,+0.6%卖出的网格进行交易。 标的选择上,网格的收益与波动性是明显正相关的,我简单写了个脚本对备选标的进行了统计,最终备选选定的是立讯转债和白电转…

2022年7月8日 0条评论 317点热度 0人点赞 阅读全文

周末的时候继续码代码,把我之前的一个通道策略移植到了重构后的系统中,在用pyinstaller进行打包exe时遇到了一个问题:打包正常,但exe运行报错,错误信息如下: 通过错误提示可以看到,打包后的exe文件在运行时导入talib包的时候发生了引入错误。因为之前只写了网格策略,而网格策略中并未用到Talib这个指标库,所以没遇到类似问题。 看了看网上关于pyinstaller的文章,这类问题经常出现在自己手动安装的第三方模块上,我不清楚我的问题是否于此有关,但我的Talib确实是通过whl手动安装的。 解决该问题…

2022年6月13日 7条评论 375点热度 2人点赞 阅读全文