以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://www.weistock.com/bbs/list.asp?boardid=4) ---- 添加缺失的代码 (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=138853) |
-- 作者:苦麻菜真好吃 -- 发布时间:2016/8/29 10:58:59 -- 添加缺失的代码 麻烦老师帮我写下代码、用后台的写 ZH:=\'\';
PZ1:=\'PP09\';
PZ2:=\'PP01\';
globalvariable:Y=0;
KK1:C1>C2;
KK2:C1<C2;
tt:TIME>131500 AND TIME<185500;
//盈利计算(对于这个模型监控品种的盈利计算)
盈利>500;
//盈利平仓 IF 盈利>500 THEN BEGIN
pz1平仓反手;
pz平仓反手;
end
//按条件开仓
IF KK1 AND tt and 没有持仓 then begin
多PZ1;
空pz2;
end
IF KK2 AND tt and 没有持仓 then begin
多PZ2;
空pz1;
end
|
-- 作者:jinzhe -- 发布时间:2016/8/29 11:11:40 -- 有两个地方我写一下,用户照着写剩下的地方
1.
盈利:=topenprofit;
2. 然后品种1开平仓 tbuy(1,1,lmt,dynainf2(7,pz1),0,\'\',pz1); tsell(1,1,lmt,dynainf2(7,pz1),0,\'\',pz1); tbuyshort(1,1,lmt,dynainf2(7,pz1),0,\'\',pz1); tsellshort(1,1,lmt,dynainf2(7,pz1),0,\'\',pz1);
pz1改成pz2就是pz2的开平仓
加入持仓判断:
tbuy(tbuyholdingex(\'\',pz1,0)=0,1,lmt,dynainf2(7,pz1),0,\'\',pz1); tsell(1,1,lmt,dynainf2(7,pz1),0,\'\',pz1); tbuyshort(tsellholdingex(\'\',pz2,0)=0,1,lmt,dynainf2(7,pz1),0,\'\',pz1); tsellshort(1,1,lmt,dynainf2(7,pz1),0,\'\',pz1); 同样是只要把pz1改成pz2就是pz2的开平仓里面加上持仓判断
[此贴子已经被作者于2016-8-29 11:11:52编辑过]
|
-- 作者:苦麻菜真好吃 -- 发布时间:2016/8/29 13:58:31 -- tt:TIME>130500 AND TIME<185500; //盈利平仓 YLPC:taccount(4)>=1000; if YLPC THEN BEGIN tbuy(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tsell(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tbuyshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tsellshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tbuy(1,14,lmt,dynainfo2(7,pz2),0,\'\',pz2); tsell(1,14,lmt,dynainfo2(7,pz2),0,\'\',pz2); tbuyshort(1,14,lmt,dynainfo2(7,pz2),0,\'\',pz2); tsellshort(1,14,lmt,dynainfo2(7,pz2),0,\'\',pz2); END IF KK1 AND tt then begin tbuy(tbuyholdingex(\'\',pz1,0)=0,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tsell(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tbuyshort(tsellholdingex(\'\',pz2,0)=0,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tsellshort(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); end IF KK2 AND tt then begin tbuy(tbuyholdingex(\'\',pz2,0)=0,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tsell(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tbuyshort(tsellholdingex(\'\',pz1,0)=0,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tsellshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); end 这样写对吗? |
-- 作者:苦麻菜真好吃 -- 发布时间:2016/8/29 14:07:51 -- 我的想法是、满足条件K1,品种1开多、品种2开空 满足条件K2,品种1开空、品种2开多 当盈利>500时,平仓并且反手、 在日内用条件K1、K2条件开仓一次,之后反手也只能开一次仓、若收盘前盈利>0那么清仓、若收盘前盈利<0,那么继续持仓
|
-- 作者:jinzhe -- 发布时间:2016/8/29 14:10:16 -- if YLPC and tbuyholdingex(\'\',pz1,0)>0 and tsellholdingex(\'\',\'pz2\',0)>0THEN BEGIN
tsell(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
tsellshort(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
tbuy(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
tbuyshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
end if YLPC and tbuyholdingex(\'\',pz2,0)>0 and tsellholdingex(\'\',\'pz1\',0)>0THEN BEGIN
tsell(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
tsellshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
tbuy(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
tbuyshort(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
end IF KK1 AND tt then begin
tbuy(tbuyholdingex(\'\',pz1,0)=0,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
tbuyshort(tsellholdingex(\'\',pz2,0)=0,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
end
IF KK2 AND tt then begin
tbuy(tbuyholdingex(\'\',pz2,0)=0,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
tbuyshort(tsellholdingex(\'\',pz1,0)=0,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
end
|
-- 作者:苦麻菜真好吃 -- 发布时间:2016/8/29 14:54:52 -- 为啥不能执行平仓反手呢? YLPC:topenprofit>=500; if YLPC and tbuyholdingex(\'\',pz1,0)>0 and tsellholdingex(\'\',\'pz2\',0)>0 THEN BEGIN tsell(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tsellshort(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tbuy(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tbuyshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); end if YLPC and tbuyholdingex(\'\',pz2,0)>0 and tsellholdingex(\'\',\'pz1\',0)>0 THEN BEGIN tsell(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tsellshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tbuy(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tbuyshort(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); end
|
-- 作者:jinzhe -- 发布时间:2016/8/29 14:59:06 -- 浮动盈亏要用上面的帐号函数 |
-- 作者:苦麻菜真好吃 -- 发布时间:2016/8/30 9:33:53 -- YLPC:=taccount(4)>=500; //YLPC:topenprofit>=500; if YLPC and tbuyholdingex(\'\',pz1,0)>0 and tsellholdingex(\'\',\'pz2\',0)>0 THEN BEGIN tsell(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tsellshort(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tbuy(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tbuyshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); end if YLPC and tbuyholdingex(\'\',pz2,0)>0 and tsellholdingex(\'\',\'pz1\',0)>0 THEN BEGIN tsell(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tsellshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tbuy(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tbuyshort(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); end IF KK1 AND tt then begin tbuy(tbuyholdingex(\'\',pz1,0)=0,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); tbuyshort(tsellholdingex(\'\',pz2,0)=0,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); end IF KK2 AND tt then begin tbuy(tbuyholdingex(\'\',pz2,0)=0,10,lmt,dynainfo2(7,pz2),0,\'\',pz2); tbuyshort(tsellholdingex(\'\',pz1,0)=0,10,lmt,dynainfo2(7,pz1),0,\'\',pz1); end
|
-- 作者:jinzhe -- 发布时间:2016/8/30 9:46:39 -- if YLPC and tbuyholdingex(\'\',pz1,0)>0 and tsellholdingex(\'\',pz2,0)>0 THEN BEGIN
tsell(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
tsellshort(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
tbuy(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
tbuyshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
end
if YLPC and tbuyholdingex(\'\',pz2,0)>0 and tsellholdingex(\'\',pz1,0)>0 THEN BEGIN
tsell(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
tsellshort(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
tbuy(1,10,lmt,dynainfo2(7,pz1),0,\'\',pz1);
tbuyshort(1,10,lmt,dynainfo2(7,pz2),0,\'\',pz2);
end
把每段第一行多的单引号删除了
|