以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  只有开仓信号,平仓是固定点数止盈止损?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=166919)

--  作者:qq代人发帖
--  发布时间:2018/12/7 10:37:37
--  只有开仓信号,平仓是固定点数止盈止损?
请教:交易系统怎么写,只有开仓信号,平仓是固定点数止盈止损?

--  作者:FireScript
--  发布时间:2018/12/7 10:50:53
--  
 以多头为例:

cond1:holding>0 and c-ENTERPRICE>=10*MINDIFF;//10点止盈
cond2:holding>0 and ENTERPRICE-c>=5*MINDIFF;//5点止损

if cond1 or  cond2 then sell(holding>0,holding,market);

开仓条件语句自行定义编写就可以了。
[此贴子已经被作者于2018/12/7 10:53:05编辑过]

--  作者:shh66666
--  发布时间:2018/12/7 11:18:49
--  
KD:= 做多开仓;          //开多条件
PD:= 做多锁仓;          //平多条件
KK:= 做空开仓;          //开空条件
PK:= 做空锁仓;          //平空条件

平空:SELLSHORT(PK,1,THISCLOSE);                  //平空信号
开多:BUY(KD AND HOLDING=0,1,THISCLOSE);          //开多信号
平多:SELL(PD,1,THISCLOSE);                       //平多信号
开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE);     //开空信号


原来是这样的,现在想改成固定点数止盈止损,刚刚您回复的不是很能看懂,你看改怎么写。指点一下

--  作者:FireScript
--  发布时间:2018/12/7 11:23:54
--  
 你这上面的代码是一个正常的开平仓操作的代码。所以你只要把上面2楼的复制到这段代码后面就行的。但是我那个只是针对多头的止盈止损,空头的可以仿照着写下。
--  作者:shh66666
--  发布时间:2018/12/7 11:32:32
--  

KD:= 多;          //开多条件

KK:= 空;          //开空条件

开多:BUY(KD AND HOLDING=0,1,THISCLOSE);          //开多信号

开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE);     //开空信号

cond1:=holding>0 and c-ENTERPRICE>=10*MINDIFF;//10点止盈
cond2:=holding>0 and ENTERPRICE-c>=5*MINDIFF;//5点止损

if cond1 or  cond2 then sell(holding>0,holding,market);

cond3:=holding>0 and ENTERPRICE-C>=10*MINDIFF;//10点止盈
cond4:=holding>0 and c-ENTERPRICE>=5*MINDIFF;//5点止损

if cond3 or  cond4 then sell(holding>0,holding,market);

我把平仓的条件去了,加上这个,图标上还是没显示开仓跟平仓的信号


--  作者:FireScript
--  发布时间:2018/12/7 13:10:06
--  

空头时候 holding是小于0的。

cond3:=holding<0 and ENTERPRICE-C>=10*MINDIFF;//10点止盈
cond4:=holding<0 and c-ENTERPRICE>=5*MINDIFF;//5点止损

if cond3 or  cond4 then sellshort(holding<0,holding,market);
[此贴子已经被作者于2018/12/7 13:10:12编辑过]

--  作者:shh66666
--  发布时间:2018/12/7 13:36:43
--  
再加一个:收盘前平仓,不持仓过夜,比如说2:55的时候无论盈亏都平仓要怎么写呢?
--  作者:FireScript
--  发布时间:2018/12/7 13:42:43
--  
 下午2:55?


if time>=185500 then
begin
sellshort(holding<0,holding,market);
sell(holding>0,holding,market);
end

--  作者:shh66666
--  发布时间:2018/12/7 13:45:18
--  
对,下午2:55