上一篇文章,介绍了怎么通过掘金量化的接口下载股票数据到本地mysql数据库。这一篇文章就来介绍一下怎么使用我们下载好的数据。

首先导入各种库:

1
2
3
4
5
6
7
8
9
10
11
import decimal
from backtrader.feed import DataBase
from backtrader import date2num
from backtrader import TimeFrame

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.orm import declarative_base
from sqlalchemy import Column,String,BigInteger,Numeric,Double,DateTime

import datetime

定义好访问mysql数据库的类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Base = declarative_base()
class Daily(Base):
__tablename__ = 'daily'

id = Column(BigInteger,primary_key=True,autoincrement=True)
symbol = Column(String(20))
frequency = Column(String(10))
open=Column(Numeric(precision=20, scale=5))
high=Column(Numeric(precision=20, scale=5))
low=Column(Numeric(precision=20, scale=5))
close=Column(Numeric(precision=20, scale=5))
pre_close=Column(Numeric(precision=20, scale=5))
volume=Column(BigInteger)
amount=Column(Double)
position=Column(BigInteger)
bob=Column(DateTime)
eob=Column(DateTime)
adj_factor=Column(Double)
name=Column(String(20))
阅读全文 »

在量化投资中,除了策略外,最重要的东西就是数据了,很多的量化教程会用大量篇幅来介绍数据处理清洗相关的知识。今天我来介绍一下怎么通过调用掘金量化的接口下载股票数据。

掘金量化数据接口

掘金量化的官网其实已经提供了下载数据的例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
# coding=utf-8
from __future__ import print_function, absolute_import
from gm.api import *


# 可以直接提取数据,掘金终端需要打开,接口取数是通过网络请求的方式,效率一般,行情数据可通过subscribe订阅方式
# 设置token, 查看已有token ID,在用户-密钥管理里获取
set_token('your token_id')

# 查询历史行情, 采用定点复权的方式, adjust指定前复权,adjust_end_time指定复权时间点
data = history(symbol='SHSE.600000', frequency='1d', start_time='2020-01-01 09:00:00', end_time='2020-12-31 16:00:00',
fields='open,high,low,close', adjust=ADJUST_PREV, adjust_end_time='2020-12-31', df=True)
print(data)

具体可查看文档:https://www.myquant.cn/docs2/sdk/python/快速开始.html#提取数据研究示例

阅读全文 »

对于一个量化交易系统而言,消息通知是非常重要的功能。比如在出买卖点、量化系统自动下单、出现异常情况时及时发送消息通知,可以让我们在第一时间掌握系统的运行情况。

完全依靠自己写一个消息通知平台不太现实,我们可以借助现有的一些聊天软件实现。现在常用的聊天软件有微信、QQ、钉钉、飞书等,在一番对比后,我发现飞书的操作最简单门槛最低。

飞书群机器人可以自动向群组成员发送消息。它可以用来发送各种类型的消息,包括文本、图片、卡片等。利用飞书群机器人,可以轻松搭建一个消息通知平台,用于将各种消息通知到群组成员。

在飞书中建一个只有自己一个人的群然后再拉一个群聊机器人进来,通过调用群聊机器人的webhook接口就可以实现消息的实时发送了。

下面以创建一个每天定时发送天气的群机器人为例,介绍下群聊机器人的使用方法:

阅读全文 »

量化策略的开发离不开各种技术指标,今天就来介绍一个专门用来计算指标的库 TA-Lib。

TA-Lib,全称 “Technical Analysis Library”,是 Python 金融量化领域常用的技术分析库。它包含了 150 多个技术指标,涵盖了股票、期货等金融市场常用的技术分析指标,例如 MACD、RSI、KDJ、布林线等等。

TA-Lib 的功能

TA-Lib 主要功能如下:

  • 提供丰富的技术指标计算函数,涵盖趋势指标、动量指标、均线指标、摆动指标、成交量指标等等;
  • 支持多种数据格式,包括 CSV、TXT、Numpy 数组等;
  • 提供 K 线形态识别功能;
  • 支持多平台,包括 Windows、Linux、Mac 等。
阅读全文 »

上一篇文章介绍了怎么在linux下安装掘金量化的sdk,但都只是在命令行下操作,很不方便。今天这篇文章讲解一下怎么配置vscode的Remote-SSH,实现连接到linux服务器上,开发策略代码。

第一步当然是下载vscode啦,官网地址在这:https://code.visualstudio.com/

安装完后,打开vscode,点下左下角的这个按钮:

d2ec2a624f16f3f70ecc28dcfe885a34.png

然后在弹出的选项框里点击【连接到主机…】
b775fb753ade8567e045eee72132a33d.png

阅读全文 »

今天来介绍一下掘金量化linux sdk的安装及使用。为啥要在linux上跑呢,原因是linux下开发和调试代码比较方便,也容易搭建自己的基础设施。

我是在一台全新安装 ubuntu 22.04 的虚拟机上安装掘金量化sdk的。

官方的安装说明如下:

如何使用 Linux 版本的 python SDK?

在Linux环境安装 gm sdk ,执行命令行python -m pip install gm -i https://pypi.tuna.tsinghua.edu.cn/simple。

SDK 需要和掘金终端通信, 但是掘金终端只有 Windows 版本, 所以策略需要指向 windows 终端。

需要在策略里指定 终端IP,策略 run()的 serv_addr 设置为‘Windows IP:7001’。

首先执行 sudo apt install python-is-python3 ,这样直接在终端输python就会调用python3了。

阅读全文 »
0%