Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共4 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:请老师看末尾协助

1楼
大牛来了 发表于:2018/11/20 11:08:57

 

//定义参数

INPUT:N1(5,1,100,10),N2(10,1,120,10);

//绘制四条均线

MA1:MA(C,N1);

MA2:MA(C,N2);

//准备下单条件,以MA2上穿MA1作为平空开多条件,以MA1下破MA2作为平多开空条件。

COND1:=CROSS(MA2,MA1);

COND2:=CROSS(MA1,MA2);

 

//下单 平空,开多

IF COND1       THEN BEGEIN   

SELLSHORT(1,1,MARKET);

BUY(1,1,MARKET);

 

END

//平多,开空

IF COND2        THEN BEGEIN   

SELL(1,1,MARKET);

BUYSHORT(1,1,MARKET);

END

 

请老师协助:我们想在这个基础上增加几个条件:记录上一次亏损,在下一次开仓,加倍手数。可以添加在上文中

举例:比如上次开1手多仓或者空单,5560价格,平仓后,这个单子是亏损的,那么在下次开仓,加倍开仓。也就是2手。再次亏损,再加加倍2*2=4手,以此类推,请老师代为编写 (盈利的单子,不考虑叠加

 

 

2楼
FireScript 发表于:2018/11/20 13:58:26
 这个亏损是指平仓亏损吗?另外你这个还有些逻辑不完整,比如本次是亏损的下次是盈利的,那么第三次交易的手数如何确定?
3楼
大牛来了 发表于:2018/11/20 19:28:23
表达的意思是:亏损一次,下次开仓双倍下单,如果默认为1手,那么亏损一次后,下次开仓是2手
4楼
FireScript 发表于:2018/11/21 9:30:30
VARIABLE:ss:=1;

//定义参数
INPUT:N1(5,1,100,10),N2(10,1,120,10);
//绘制四条均线
MA1:MA(C,N1);
MA2:MA(C,N2);
//准备下单条件,以MA2上穿MA1作为平空开多条件,以MA1下破MA2作为平多开空条件。
COND1:=CROSS(MA2,MA1);
COND2:=CROSS(MA1,MA2);
//下单 平空,开多
IF COND1 THEN
BEGIN  
SELLSHORT(1,1,MARKET);
if NUMPROFIT(1)<0 then ss:=ss*2;
BUY(1,ss,MARKET);
END

//平多,开空

IF COND2 THEN
BEGIN  
SELL(1,1,MARKET);
if NUMPROFIT(1)<0 then ss:=ss*2;
BUYSHORT(1,ss,MARKET);
END

用全局变量进行下控制就可以了。平仓代码后面直接判断最近一次的盈亏,然后给ss重新赋值。
共4 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.00391 s, 3 queries.