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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 卖出所有持仓的意思吗

   

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


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

主题:卖出所有持仓的意思吗

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


加好友 发短信
等级:黑侠 帖子:611 积分:0 威望:0 精华:0 注册:2015/9/11 9:51:55
卖出所有持仓的意思吗  发帖心情 Post By:2021/3/14 23:13:22 [只看该作者]

 sell_close(k,"market",volume=portfolio_i.buy_today_quantity,serial_id = 1)

 

是如题的意思吗?

如果不是,应该怎么表示呢?类似与pel中的sell ('',holding,...)的意思


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2021/3/15 13:36:23 [只看该作者]

是的,没错

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


加好友 发短信
等级:黑侠 帖子:611 积分:0 威望:0 精华:0 注册:2015/9/11 9:51:55
  发帖心情 Post By:2021/3/24 23:13:26 [只看该作者]

sell_close(k,"market",volume=portfolio_i.buy_today_quantity,serial_id = 1)

 

应用到范例 change_hold ,不能平仓,哪里错了?平全部的持仓,到底应该怎么写?


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


加好友 发短信
等级:黑侠 帖子:611 积分:0 威望:0 精华:0 注册:2015/9/11 9:51:55
  发帖心情 Post By:2021/3/24 23:31:03 [只看该作者]

另外,查询账户各品种,持有多少仓,手或股,应该怎么表达?

有没有细致一点的API说明?


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


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2021/3/25 15:05:10 [只看该作者]

贴出完整的代码,单独一句话,没法分析结果。


编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
wenarm
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2021/3/25 15:10:51 [只看该作者]

另外,查询账户各品种,持有多少仓,手或股,应该怎么表达?

有没有细致一点的API说明?

 

通过get_portfolio_book 函数得到持仓列表在通过get_portfolio获取具体品种的仓位数量。

 

 

目前没有新的api说明。新的说明都还在整理中 

[此贴子已经被作者于2021/3/25 15:11:16编辑过]


编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
rockyan
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:611 积分:0 威望:0 精华:0 注册:2015/9/11 9:51:55
  发帖心情 Post By:2021/3/25 18:12:33 [只看该作者]

# 可以自己import我们平台支持的第三方python模块,比如pandas、numpy等。

#比较简单的根据市盈率做的策略,只选取排名前几的进行轮动调仓。
#使用前注意补充好300样本股历史数据及专业财务数据
#推荐使用000001上证指数做基准合约

import time
import os
import csv
import numpy as np
import talib as ta

# 在这个方法中编写任何的初始化逻辑。context对象将会在你的算法策略的任何方法之间做传递。
def init(context):
    #买入的股票数
    context.num = 10
    context.code = []
   
# before_trading此函数会在每天策略交易开始前被调用,当天只会被调用一次
def before_trading(context):
    #选取300成份样本股作为股票池
    try:
        context.code = get_blocks("沪深300样本股",1)
    except:
        pass

# 你选择的证券的数据更新将会触发此段逻辑,例如日或分钟历史数据切片或者是实时数据切片更新
def handle_bar(context):
    # 开始编写你的主要的算法逻辑
    try:
        #print(context.num)
        pe = []
        code = []
        #筛选非停牌且eps大于0的票
        for i in context.code:
            close = history_bars(i, 1, '1d','close')
            temp = [1]
            print(6)
            #fin_indicator(i,'EPS',1,0,0)
            if len(close)>0 and temp[-1]>0:
                print(7)
                code.append(i)
        #转换成市盈率
        for j in code:
            print(8)
            close = history_bars(j, 1, '1d','close')
            temp = [1]#fin_indicator(j,'EPS',1,0,0)
            pe.append(close[-1]/temp[-1])
        pe_ra = np.array(pe)
        #对pe进行排序,buy_list是排名前几的股票列表
        sort = np.argsort(pe_ra)
        code = np.array(code)
        buy_list = code[[sort[:context.num]]]
        sell_num = 0
        #获得持仓品种信息
        ho =get_portfolio_book(0)
        print(2)
        if len(ho)>0:
            #print(3)
            for k in ho:
                #print(4)
                if not(k in buy_list):
                        #print(5)
                        #sell_close(k,"market",volume=portfolio_i.buy_today_quantity,serial_id = 1)
                        sell_close(k,"market",0,volume=portfolio_i.buy_today_quantity,serial_id = 1)             

                        #sell_close(k, 'Market', 0, 100, 0,serial_id = 1)
                        sell_num = sell_num+1
                       
        for kk in buy_list[:context.num]:
            if not(kk in ho):
                buy_open(kk, 'Market', 0, 100, 0,serial_id = 2)
                #print(1)
    except:
        pass

# after_trading函数会在每天交易结束后被调用,当天只会被调用一次
def after_trading(context):
    pass
   


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


加好友 发短信
等级:黑侠 帖子:611 积分:0 威望:0 精华:0 注册:2015/9/11 9:51:55
  发帖心情 Post By:2021/3/25 18:23:30 [只看该作者]

完整代码见上

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


加好友 发短信
等级:黑侠 帖子:611 积分:0 威望:0 精华:0 注册:2015/9/11 9:51:55
  发帖心情 Post By:2021/3/25 18:26:04 [只看该作者]

6楼

通过get_portfolio_book 函数得到持仓列表在通过get_portfolio获取具体品种的仓位数量。

 

 

请问,get_portfolio仓位数量,应该怎么写?可以举个例吗?说明里看不出来应该怎么写参数


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2021/3/25 19:08:48 [只看该作者]

get_portfolio返回一个portfolio对象

然后根据api文档你去看这个对象的属性不就明白了吗

这个如果您对编程中对象概念没有概念的话,估计在编写python这类代码中会比较困难的


 回到顶部
总数 13 1 2 下一页