以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  网格交易模型编写求助  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=180810)

--  作者:Damoclus
--  发布时间:2020/6/25 15:03:18
--  网格交易模型编写求助

  比如要投入10万资金,总分网格为20格,每格分得5000元,当前价位在最高位往下数第4格位置,则首次建仓资金:5000 X 4 =2万

以后每日就以上次成交价格为中心,在开盘前预埋涨5%卖单,跌5%买单,买卖数量按事先计算好的每个网格的交易量。


--  作者:FireScript
--  发布时间:2020/6/29 14:23:29
--  
先明确一些思路细节,然后还要再根据你思路情况看下要用后台还是图表实现 。
1.“当前价位在最高位往下数第4格位置”这个首次建仓是当日最高价回落四个格子的位置的时候建仓是吗?

2.网格最高点最低点如何确定的。也就是第一层格子和第20层格子的价位位置。是根据历史最高最低价还是其他方式?
[此贴子已经被作者于2020/6/29 14:25:46编辑过]

--  作者:Damoclus
--  发布时间:2020/7/7 15:40:20
--  

1.首次建仓是当日最高价回落4个格子的位置建仓。

2.根据历史最高价最低价。或者提前计算好自定义网格




--  作者:Damoclus
--  发布时间:2020/7/7 15:44:45
--  
自定义固定网格


--  作者:Damoclus
--  发布时间:2020/7/7 15:50:03
--  

固定网格,把股票数分为10份,每上涨5%卖出1份股票,每下跌5%买入1份股票。




--  作者:FireScript
--  发布时间:2020/7/7 16:15:16
--  
 这个思路只能用后台操作。我们这边要尝试下,不能保证一定能实现出来。编写后会更新在本帖。
--  作者:Damoclus
--  发布时间:2020/7/7 17:04:39
--  
好的,谢谢您
--  作者:FireScript
--  发布时间:2020/7/10 16:49:44
--  
先提供图表的网格,因为这样容易把思路确定下来,如果后面要用后台那在图表基础上再改动即可。

提供2种网格的方式。一个是固定网格,也就是确定顶部和底部的,另一个是按照上次开仓价的涨跌幅操作的,也就是每次涨跌百分之多少的时候增减仓。

1.固定网格的:
*被引用指标X 代码
1G:llv(l,5);
20G:hhv(h,5);

当前交易的指标代码:


input:n(20,1,100,1);//N表示具体的各自数

//以过去5日(日线)最高 最低价 作为网格顶部和底部  这里可以自行调整。这个格子的设置并不合理,尤其是单边行情下,很容易出问题。就是会出现当日的价格已经在20个格子范围外了的情况。

1G:STKINDI(\'\',\'X.1G\',0,6,-1);//底格
20G:STKINDI(\'\',\'X.20G\',0,6,-1);//顶格

Len:(20G-1G)/n,NODRAW;//格子的间距

location:INTPART(((20G-c)/Len))+1,NODRAW;//这个location就是表示当前价格所在网格的层数 。最上面的第一层(1),最底下是最后一层(2)。

cd:location>0 and location<=20;//如果价格已经在格子范围外了,暂定不操作。

//开平仓就是判断当前在哪一层格子里。仓位如果和格子层数不一致,则开仓或者平仓来进行调整。

hhvbar:HHVBARS(h,TODAYBAR),NODRAW;//当日最高价距离现在周期的位置,这个是指K线周期跨度
 
if location-ref(location,hhvbar)>=4 then 首次开仓:buy(holding=0,location,market);//从最高价所在位置的层数 下落四个格子 则首次开仓

if location<>holding and cd and holding<>0 then
begin
加仓:buy(location>holding,location-holding,market);
减仓:sell(location<holding,holding-location,market);     
end


if time=CLOSETIME(0) then  //仓位不隔夜
begin
收盘平仓:sell(holding>0,holding,market);   
end

持仓:holding,NODRAW;



这个思路上还有些不完整,比如网格顶格和底格的确定方式,价格超出网格范围的处理 等等。反正你先在图表上进一步整理下自己思路。后面再完善吧。

2.按照百分比幅度的。
看这个帖子里的。供参考下操作思路吧。
http://www.weistock.com/bbs/dispbbs.asp?boardid=10&Id=180677


--  作者:Damoclus
--  发布时间:2020/7/13 16:41:39
--  
好的,感谢详细解答!
--  作者:Damoclus
--  发布时间:2020/7/14 16:49:14
--  
按照股票价格,如果是0-10,固定一个大网格格子,在里面划分格子(或者按照百分比划分),根据格子数进行开平仓呢??每跌一个格子开仓,每涨一个格子开仓