首页 » 网站推广 » 会所点钟PHP源码技巧_进修QMT股票量化系统准时责任

会所点钟PHP源码技巧_进修QMT股票量化系统准时责任

访客 2024-11-01 0

扫一扫用手机浏览

文章目录 [+]

常见的策略构造紧张有 3 类:

1、定时任务;

会所点钟PHP源码技巧_进修QMT股票量化系统准时责任

2、事宜驱动任务;

会所点钟PHP源码技巧_进修QMT股票量化系统准时责任
(图片来自网络侵删)

3、定时任务+事宜驱动任务。

我们之前学习的单均线策略,双均线策略和四日法则等等都是事宜驱动任务。
事宜驱动任务是一种基于特定事宜的触发来实行相应操作的办法,例如价格达到了某个值、或是短期均线上穿了长期均线,当这样的事宜发生后,实行了下单交易,便是事宜驱动任务。

二、什么是定时任务

在量化策略中,定时任务是指按照预先设定的固定时间间隔或特定时间点来实行的任务。
例如像小市值策略,每月或每季度获取一次股票市值数据,然后进行从小到大排序,并以此对自己的投资组合进行调度。

不过今年上半年由于ST和退市隐患的缘故原由,小市值策略就一言难尽了,我们还是其余找个例子吧。

三、定时任务实例

实例:在每个交易日的10:00选出涨停了的股票

“每个交易日的10:00”,这便是固定的韶光,“选出涨停了的股票”,便是所实行的操作。
我们先来看看完全代码:

#encoding:gbk'''十点钟定时选出涨停股票'''import time, datetimeclass a():passA = a()def init(C):# 获取沪深A股的股票列表A.hsa = C.get_stock_list_in_sector('沪深A股')# 打消创业板和科创板股票A.hsa = [stock for stock in A.hsa if not stock.startswith(('300', '688','301'))]# 设置定时任务,每个交易日10点运行 f 函数C.run_time("f","1nDay","2024-07-12 10:00:00")def f(C):print("定时任务现在开始运行……")# 获取当前韶光now = datetime.datetime.now()# 获取最新分笔数据full_tick = C.get_full_tick(A.hsa)# 遍历股票列表,检讨是否涨停for stock in A.hsa:last_close = full_tick[stock]['lastClose']last_price = full_tick[stock]['lastPrice']# 打算涨停价,假设涨停限定为前收盘价的110%limit_up_price = last_close 1.1# 判断当前价格是否达到涨停价if last_price >= limit_up_price:# 获取股票名称stock_name = C.get_stock_name(stock)# 获取股票价格stock_price = last_price# 打算股票涨幅rise_percentage = ((stock_price - last_close) / last_close) 100# 打印涨停股票的代码、名称、价格和涨幅print(f"{now} 涨停股票: {stock} {stock_name}, 价格: {stock_price:.2f}元, 涨幅: {rise_percentage:.2f}%")

程序运行结果如下图:

在定时任务中,我们须要导入的库是time和datetime。

然后,我们就须要为将要实行的操作设定好一个“闹钟”,这个“闹钟”便是run_time()函数。

用法:ContextInfo.run_time(funcName,period,startTime)

在本例中ContextInfo可以简写成C,参数funcName是回调函数名,本例回调函数名为f ,period为重复调用的韶光间隔,1nDay表示每1天运行一次回调函数,如果写成5nSecond,便是每5秒钟就运行一次回调函数。
startTime仅是策略第一次运行韶光,我们可以设定一个较早的历史韶光,定时器会立即启动。

#夏日生活打卡季#

标签:

相关文章

招商蛇口中国房地产龙头企业,未来可期

招商蛇口(股票代码:001979),作为中国房地产企业的领军企业,自成立以来始终秉持“以人为本,追求卓越”的经营理念,致力于打造高...

网站推广 2025-02-18 阅读1 评论0