菜鸡毕业路:量化策略(二)JoinQuant入门

菜鸡毕业路:量化策略(二)

学习目标

量化策略学习主要分为一下几个方向:
1) python基础,爬虫
2)机器学习深度学习理论基础
3)常用的量化模型
4)数据库
5)金融知识

学它不需要成为社畜才能变现,它是属于你自己的一亩三分地!请牢记这一点,一个程序猿不要为了找工作而学习量化,是为了挣脱996束缚的枷锁才来学习这一门技艺。
https://zhuanlan.zhihu.com/p/273286207

  1. python基础 ,已掌握,略过;
  2. 量化框架的选择 ,链接🔗(待更新);
  3. 基础金融知识 ,链接🔗(待更新);
  4. 行情数据来源 ,链接🔗(待更新);
  5. 基础金融知识 ,链接🔗(待更新);
  6. 开发实例 ,链接🔗(待更新);

量化入门(一)

JoinQuant一个基于Python的在线量化交易平台。量化和编程相结合。学习量化第一天快速入门熟悉使用JoinQuant

十行代码带你量化交易入门

  • 摘要回顾:
    • 确定策略内容与框架
    • 初始化
      • 全局变量 g.
      • 股票后缀 : 深交所后缀为 ".XSHE ",上交所后缀为 “.XSHG”。
    • 获取收盘价与均价
      • 获取二十日均价 data[ i ].mavg
      • 获取收盘价 data[ i ].close
    • 判断是否买卖
      • 利用 if 进行判断
      • 获取当前账户现金 context.portfolio.cash
    • 买入卖出
      • 下市价单
        #用法:order_value(要买入股票股票的股票代码,要多少钱去买)
        order_value(g.security, cash)# 用当前所有资金买入股票
        #用法:order_target(要买卖股票的股票代码,目标持仓金额)
        order_target(g.security, 0)# 将股票仓位调整到0,即全卖出
      • 滑点 简言之是为成交误差留出余地。
      • 下单方法有哪些
      • 无法交易的情况: 涨跌停,停牌,T+1制度等
    • 进行回测
      • 回测含义及其方法
      • 如何根据回测结果评价策略
    • 建立模拟交易,行情实时连接

多股票策略
和第一个入门相比,就是多了for循环

简单市值轮动策略

  • 摘要回顾:
    • 使用run_daily进行周期循环
      run_daily(daily,time=‘every_bar’)# 周期循环daily
      def daily(context):

    • 取用市值数据、持仓数据、指数成分股数据
      scu = get_index_stocks(‘000001.XSHG’)+get_index_stocks(‘399106.XSHE’)
      get_fundamentals(query(
      #获取的数据,多个数据项用逗号隔开
      数据表.数据项,数据表.数据项…
      ).filter( # 按条件筛选
      #具体条件 多个条件用逗号连接,且要求是要同时满足
      数据表.数据项>xx,数据表.数据项<xx,数据表.数据项.in_(scu),…
      ).order_by( # 排序
      #.asc()是从小到大 .desc()是从大到小
      数据表.数据项.asc()
      ), date=日期
      )

    • 学会编写简单小市值轮动策略

市值轮动策略2.0

  • 摘要
    • 自定义函数 : daily 是主体main函数
      def daily(context):
      #判断策略进行天数是否能被轮动频率整除余1
      if g.days % g.period == 1:
      #选出要交易的股票
      buylist=pick(context)
      #交易下单
      trade(context,buylist)
      else:
      pass # 什么也不做
    • 过滤停牌、涨停和st股——共享函数库
    • 均衡分配资金 position_per_stk = context.portfolio.total_value/g.stocksnum
    • 止损 每天检测持仓每个股票的亏损情况,清仓亏损达到20%的股票。
      if context.portfolio.positions[stock].price/context.portfolio.positions[stock].avg_cost < 0.8:
      # 调整stock的持仓为0,即卖出
      order_target(stock, 0)
      # 输出日志:股票名 止损
      print “\n%s 止损” % stock
    • 自定义函数库

市值轮动策略3.0

  • 摘要
    • 分钟止损 : run_daily中的time参数从’every_bar’改为’before_open’

    • 行业与概念股

    • 根据大盘调整持仓水平 :新增一个全局变量g.holdpct来接受返回的信号

    • 获取行情——history:mktindex就是沪深300指数的最新值
      沪深300指数的最新值

    • 技术指标库

    • 带名字的list——dict
      在这里插入图片描述

    • 性能分析
      分钟级策略计算量容易很大,极端时可能会造成交易延迟,以至于出现策略总是慢半拍的情况,所以我们也要关注下策略的运算耗时情况,而相关函数就是——enable_profile

    • 归因分析
      归因分析功能会分析你的回测结果,从多个维度分析你的策略,如收益、持仓、风险、因子、brinson归因等。这个功能计算量比较大,尤其是brinson归因,所以往往会明显感觉到慢,请耐心等待。

学习计划

  • 数据结构

      • 刷题
  • 数据库

      • 学习数据库相关
  • 机器学习

      • 看面试题
  • 量化

      • 看教程
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值