欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件策略编写求助区 → [原创]新人,请老师帮助写一下策略,谢谢。

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2448人关注过本帖树形打印复制链接

主题:[原创]新人,请老师帮助写一下策略,谢谢。

帅哥哟,离线,有人找我吗?
涨停忍者828
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:2 积分:0 威望:0 精华:0 注册:2021/5/15 14:18:02
[原创]新人,请老师帮助写一下策略,谢谢。  发帖心情 Post By: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%",计算第二天“下午最高价”的收益率。

 

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
无为剑
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:2437 积分:0 威望:0 精华:0 注册:2016/3/5 22:53:41
  发帖心情 Post By: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
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:2 积分:0 威望:0 精华:0 注册:2021/5/15 14:18:02
谢谢  发帖心情 Post By:2021/5/19 13:14:23 [只看该作者]

谢谢帮助

 回到顶部