以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 策略编写求助区 (http://weistock.com/bbs/list.asp?boardid=11) ---- [原创]新人,请老师帮助写一下策略,谢谢。 (http://weistock.com/bbs/dispbbs.asp?boardid=11&id=188316) |
-- 作者:涨停忍者828 -- 发布时间:2021/5/16 15:09:21 -- [原创]新人,请老师帮助写一下策略,谢谢。 我是新人,想要购买入手金字塔,目前学习回测,请老师帮忙写一下,谢谢。 下面是股票的策略\\; 策略一。 1.沪深A股主板的股票(去除创业板和科创板),二连板及以上的股票。 2.早盘9:31分后,第1个触及跌停板的股票。(第2个及后面不计算入内),立即买入。 3.跌停价买入,计算第二天“收盘价”的收益率。 策略二。 1. 沪深A股主板(去除创业板和科创板),三连板及以上的股票。 2.上午9:40分后,第1个触及“涨停板-1分钱”的股票。(第2个及后面不计算入内),即时打板买入。 3. 买入价为“涨停价减去1分钱”,计算第二天"上午最高价"的收益率. 策略三。 1. 创业板的股票(去除主板和科创板),昨天没涨停。 2.上午最高价小于14%,下午第1个冲过14%的股票,回落准备买入(第2个及后面不计算入内)。 3.买入价是“下午最高价”减去"昨收盘价*4%",计算第二天“下午最高价”的收益率。 |
-- 作者:无为剑 -- 发布时间:2021/5/18 12:44:57 -- 只做了策略1,其他2个策略你可自行改造一下即可,代码是python编写,在金字塔上测试请补充好整个沪深市场的1分钟和日线数据。 from PythonApi import * import pandas as pd def init(context): context.days = 0 pass # before_trading此函数会在每天基准合约的策略交易开始前被调用,当天只会被调用一次。--(选择实现) def before_trading(context): pass # 你选择的品种的数据更新将会触发此段逻辑,例如日或分钟历史数据切片或者是实时数据切片更新。--(必须实现) def handle_bar(context): # 平仓部分 for i in get_portfolio_book(2, ""): portfolio = get_portfolio (i, 2) # 开盘就平 if portfolio.buy_today_quantity>0: sell_close(i, "Market",0 ,portfolio.buy_today_quantity,serial_id = 1) #开仓部分 hour = context.now.hour minute = context.now.minute days = context.now.day if hour >= 9 and minute >= 31 and context.days != days: code_list = context.universe dic = {} for i in code_list: close = history_bars(i,2,\'1d\',\'close\') close_1m = history_bars(i,2,\'1m\',\'close\') if len(close) < 2 or len(close_1m) < 2: continue zf = close_1m[-1]/close[-1] if zf < 0.91: continue if zf > 0.93: continue portfolio = get_portfolio (i, 2) if portfolio.buy_quantity==0 and context.days != days : buy_open(i, "Market",0 ,amount=10*10000,serial_id = 2) context.days = days break def after_trading(context): pass |
-- 作者:涨停忍者828 -- 发布时间:2021/5/19 13:14:23 -- 谢谢 谢谢帮助 |