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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 如何在编程公式里调整仓位手数?

   

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


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

主题:如何在编程公式里调整仓位手数?

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


加好友 发短信
等级:新手上路 帖子:18 积分:0 威望:0 精华:0 注册:2016/12/19 10:33:55
如何在编程公式里调整仓位手数?  发帖心情 Post By:2017/5/25 21:19:39    Post IP:182.139.28.24[只看该作者]

这是一个系统自带的三进三出交易法。

可应用在期货上,单个品种的持仓手数都很大,在公式里如何设置手数?

在期货下单功能,自定义下单设置里,设置了手数,可自动交易时还是按公式内的手数。

 

 

//该模型为简单示范模型,用户需根据自己交易经验,修改完善后再实际应用!!!
//申明变量
INPUT:N1(20,10,99),N2(15,0,99),首仓(35,0,100),二仓(65,0,100),三仓(100,0,100),首止损(5,0,15)
,二止损(10,0,15),启用期(960101,901219,1500101),FL(5,0,30);
ST:=SMA(H-L,20,1);  U:MA(C,N1);  D:MA(C,N2);
PP:=AVGENTERPRICE;   NB:=ENTERBARS;   NS:=EXITBARS;
测试期:=DATE>启用期;
持仓:=HOLDING;
券值:=持仓*C;                      {券值}
总资产:=券值+CASH(0);
空仓历时:=BARSLAST(持仓=0);
仓位:=券值/总资产*100;            {仓位%}
浮利率:=C/PP*100-100;             {持仓股获利率}
SV:=INTPART(总资产/C/300+1)*100;    {标准购买单位}
M:=CROSS(U,D);
P:=CROSS(D,U);

M1:=M AND 测试期;

M2:=CROSS(C,REF(C,NB)*0.9) AND 测试期;   { AND 持仓<SV*2}
M3:=CROSS(C,REF(C,NB)*(100+FL)/100) AND 测试期;   { AND 持仓<SV*3}
MV1:=SV;                            {INTPART((总资产*首仓-100*C*持仓)/C/10000)*100仓位控制到仓1}
MV2:=SV;                            {INTPART((总资产*二仓-100*C*持仓)/C/10000)*100仓位控制到仓2}
MV3:=INTPART(CASH(0)/C/100)*100;       {INTPART((总资产*三仓-100*C*持仓)/C/10000)*100仓位控制到仓3}

F1:=CROSS(HHV(C,NB+1)*(100-首止损)/100,C);
F2:=CROSS(HHV(C,NB+1)*(100-二止损)/100,C);
P1:=F1*(SUM(F1,NB)=1);
P2:=F2*(SUM(F2,NB)=1);
P3:=P OR CROSS(HHV(C,NB+1)*0.85,C);

PV1:=SV;
PV2:=SV;
PV3:=持仓;

//交易系统
开1:BUY(M1,MV1,THISCLOSE); //开仓1
开2:BUY(M2 AND SUM(P1+P2+P3,NB)=0,MV2,THISCLOSE);  //开仓2
开3:BUY(M3 AND SUM(P1+P2+P3,NB)=0 AND M2=0,MV3,THISCLOSE);  //开仓3

抛1:SELL(P1,PV1,THISCLOSE);  //平仓1
抛2:SELL(P2,PV2,THISCLOSE);  //平仓2
抛3:SELL(P3,PV3,THISCLOSE);  //平仓3

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;


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


加好友 发短信
等级:超级版主 帖子:5960 积分:0 威望:0 精华:2 注册:2014/6/12 11:29:04
  发帖心情 Post By:2017/5/26 8:31:01    Post IP:180.169.30.6[只看该作者]

学习下 buy,sell这种下单函数,buy(cond,SS,MARKET)  函数里面第二个参数对应为买卖的手数

例如,下面红色标记部分

开1:BUY(M1,MV1,THISCLOSE); //开仓1
开2:BUY(M2 AND SUM(P1+P2+P3,NB)=0,MV2,THISCLOSE);  //开仓2
开3:BUY(M3 AND SUM(P1+P2+P3,NB)=0 AND M2=0,MV3,THISCLOSE);  //开仓3

抛1:SELL(P1,PV1,THISCLOSE);  //平仓1
抛2:SELL(P2,PV2,THISCLOSE);  //平仓2
抛3:SELL(P3,PV3,THISCLOSE);  //平仓3



金字塔—专业程序化交易量化投资平台

产品部

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

欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com
 回到顶部