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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 股票池选出个股后按名次分配权重资金。

   

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


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

主题:股票池选出个股后按名次分配权重资金。

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


加好友 发短信
等级:论坛游侠 帖子:233 积分:223 威望:0 精华:0 注册:2010/3/10 9:06:51
股票池选出个股后按名次分配权重资金。  发帖心情 Post By:2016/10/11 20:33:37 [只看该作者]

图片点击可在新窗口打开查看
图片点击可在新窗口打开查看

本帖引自普通问题板块,金字塔目前通过股票池选出的个股是等权重分配资金买入,通过后台也无法确定哪一个是第一名,如果想对名次靠前的个股给予更多的资金分配,名次靠后的个股给予少一些的资金分配目前来说还做不到。上面第一图是假期里面股票池选出来的个股,如果能对第一名读者传媒给予更多的资金买入,两个涨停板交易日后的今天则会取得更好的成绩。
为啥我要强调名次的顺序呢。虽然金字塔提供了股票池这个大杀器,但是从实战上来说运用还不够灵活,比如某账户资金100万,我想拿20%的资金购买量比排行榜(降序)前三位的个股,第一名50%权重(100万*20%*50%=10万),第二名30%权重(100万*20%*30%=6万),第三名20%(100万*20%*20%=4万)权重。

不知道这个问题能不能有其他方式解决呢?


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


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2016/10/11 22:27:10 [只看该作者]

稍等,相关范例编写中


金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
zzaassxx
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:233 积分:223 威望:0 精华:0 注册:2010/3/10 9:06:51
  发帖心情 Post By:2016/10/13 12:48:10 [只看该作者]

我得从一个实战的角度来解释一下这个股票池名次重要的问题,以便于金字塔能了解一下实战中用户更需要哪些功能,才能开发出更加贴近真实实战的软件功能。
目前的股票池把条件选股、排序选股两块集于一身,其实这两个说的不是一回事。

1、当使用的是股票池的条件选股功能时,名次排名没意义:比如我可以让股票池选出所有5日均线>10日均线的个股。这个选出的股票在股票池里叫状态池,这个状态池里面比如说选出有200个股票,这么多股票不可能都买,就有待继续加工,这些个股的名次排名没任何价值。

2、状态池选了那么多的股票我们可以加工一下,这个时候就可以用到排序选股功能(勾选下图“选择指标排序”),名次就重要了:比如对这200个股票用kdj指标的j线进行排序,取j值最小(升序)的头二支个股作为买进的个股;或者对这200个股票用量比指标进行排序,取量比最大(降序)的头二支个股作为买进个股。这个排序在实战当中是非常有用的,用来挑选最合适的目标个股(现在的金字塔默认只能是升序排序)

3、最后才是对挑选出的个股进行资产配置,比如第一名配多少权重资金,第二名配多少权重资金等。
图片点击可在新窗口打开查看

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


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2016/10/13 20:08:05 [只看该作者]

 

'全局变量,计算触发的个数
Dim StockCount
StockCount = 0

'获取股票池触发事件
Sub MARKETDATA_StockPoolNotifyIng(StockPool, StatusPool, Code, Market)
 
 '触发的股票池数据记录到文本文件中
 Document.DebugFile "C:\GPCLog.txt",Market&Code,1
  
 '判断股票池有多少品种
 If StockPool = "股票池" And StatusPool = "状态池1" Then
  StockCount = StockCount + 1
 End If
 
 CalcCash = 0 '计算该使用多少资金
 
 '计算下单价格,防止出现涨停板
 PleacePrice = 0
 Set MyReport = marketdata.GetReportData(Code,Market)
 If MyReport.SellPrice1 > 0 Then
  PleacePrice =  MyReport.SellPrice1
 Else
  PleacePrice = MyReport.NewPrice '如果卖1价格为0表示已经涨停板,取最新价计算
 End If
  
 '调试代码
 'Application.MsgOut StockCount
 
 If StockCount = 1 Then '第一个触发品种
     CalcCash = 500000
 ElseIf StockCount = 2 Then
  CalcCash = 300000
 ElseIf StockCount = 3 Then
  CalcCash = 200000
 End If
 
 If PleacePrice > 0 And CalcCash > 0 Then
  CalcVol = CalcCash / PleacePrice
  call Order.Buy(0,CalcVol,PleacePrice,0,Code,Market,"",0)
  Application.MsgOut "已触发股票池下单,代码:"&Code&" - 价格:"&PleacePrice&" - 数量:"&CalcVol
 End If
   
End Sub



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2016/10/13 20:09:09 [只看该作者]

你说的问题2,我们后面会修正一下,对于后几名选项,按照倒序触发


金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2016/10/14 12:52:54 [只看该作者]

经过我们测试,问题2不存在你说的问题,如果按照取后N名股票,就是按照倒序排序的


金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部