全部版块 我的主页
论坛 金融投资论坛 六区 金融学(理论版) 量化投资
1855 0
2017-07-25
1. 策略原理:
    始终买入沪深300中市值最小的5只
    先订阅000300分钟行情(也可订阅其他symbol,只是用来作行情触发)
    第一个bar行情到来时在md_init中选股
    选出股票池与持仓作对比
    无持仓时直接按照股票池等权买入
    有持仓时,不在股票池中的股票卖出
    在成交回报on_order_filled中判断是否都已卖出,卖出仓位都成交以后再买入。



2. 代码解读:
    2.1 Alpha.py
复制代码
  2.2 small_market_value.py
复制代码
3. Python相关函数
    3.1 Python标准函数:
功能函数原型参数返回值
参数名含义
join连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串'sep'.join(seq)sep分隔符。可以为空返回一个以分隔符sep连接各个元素后生成的字符串
seq要连接的元素序列、字符串、元组、字典
sorted排序sorted(iterable, cmp=None, key=None, reverse=False)iterableiteralbe指的是能够一次返回它的一个成员的对象。iterable主要包括3类: 第一类是所有的序列类型,比如list(列表)、str(字符串)、tuple(元组)。 第二类是一些非序列类型,比如dict(字典)、file(文件)。 第三类是你定义的任何包含__iter__()或__getitem__()方法的类的对象。
cmpcmp: 指定一个定制的比较函数,这个函数接收两个参数(iterable的元素),如果第一个参数小于第二个参数,返回一个负数;如果第一个参数等于第二个参数,返回零;如果第一个参数大于第二个参数,返回一个正数。默认值为None。
keykey:指定一个接收一个参数的函数,这个函数用于从每个元素中提取一个用于比较的关键字。默认值为None。
reversereverse:是一个布尔值。如果设置为True,列表元素将被降序排列,默认为升序排列。 通常来说,key和reverse比一个等价的cmp函数处理速度要快。这是因为对于每个列表元素,cmp都会被调用多次,而key和reverse只被调用一次。
3.2 掘金接口函数:
[tr][/tr]
功能函数原型参数返回值
参数名类型说明
get_instruments提取交易代码。策略类和行情服务类都提供该接口。get_instruments(exchange, sec_type, is_active)exchangestring交易所代码Instrument对象列表
sec_typeint代码类型:1.股票,2.基金,3.指数,4.期货,5.ETF
is_activeint当天是否交易:1.是,0.否
get_constituents提取指数的成分股代码。策略类和行情服务类都提供该接口。get_constituents(index_symbol)index_symbolstring指数代码constituent对象列表
get_last_market_index按时间周期提MarketIndex,按时间升序排列。策略类和行情服务类都提供该接口。get_last_market_index(symbol_list)symbol_liststring多个品种代码列表,如SHSE.600000,SZSE.000001MarketIndex对象列表
get_last_dailybars提取最新1条DailyBar数据,支持单个代码提取或多个代码组合提取。策略类和行情服务类都提供该接口。get_last_dailybars(symbol_list)symbolstring证券代码, 带交易所代码以确保唯一,如SHSE.600000,同时支持多只代码DailyBar列表
get_positions查询当前策略指定symbol(由交易所代码和证券ID组成)和买卖方向的持仓信息。策略类和交易服务类都提供该接口。get_position(exchange, sec_id, side);exchangestring交易所代码Position对象,持仓信息
sec_idstring证券代码
sideint买卖方向
get_cash查询当前策略的资金信息,策略类和交易服务类都提供该接口。get_cash()Cash对象,当前策略的资金信息
open_long异步开多仓,以参数指定的symbol、价和量下单。如果价格为0,为市价单,否则为限价单。策略类和交易服务类都提供该接口open_long(exchange, sec_id, price, volume)exchangestring交易所代码, 如上交所SHSE委托下单生成的Order对象
sec_idstring证券代码,如浦发银行600000
pricefloat委托价,如果price=0,为市价单,否则为限价单
volumefloat委托量
close_long异步平多仓接口,以参数指定的exchange, 证券代码sec_id, 价和量下单。如果价格为0,为市价单,否则为限价单。策略类和交易服务类都提供该接口。close_long(exchange, sec_id, price, volume)exchangestring交易所代码, 如上交所SHSE委托下单生成的Order对象
sec_idstring证券代码,如浦发银行600000
pricefloat委托价,如果price=0,为市价单,否则为限价单
volumefloat平仓量

4. 金融术语:
阿尔法策略:投资者在市场交易中面临着系统性风险(即贝塔或Beta、β风险)和非系统性风险(即阿尔法或Alpha、α风险),通过对系统性风险进行度量并将其分离,从而获取超额绝对收益(即阿尔法收益)的策略组合,即为阿尔法策略。从广义上讲,获取阿尔法收益的投资策略有很多种,其中既包括传统的基本面分析选股策略、估值策略、固定收益策略等等,也包括利用衍生工具对冲掉贝塔风险、获取阿尔法收益的可转移阿尔法策略。后者在国内通常被称为阿尔法对冲策略,并在近年A股市场上得到广泛应用。本策略只是展示了选股策略,并没有将贝塔风险对冲。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群