共82 条记录, 每页显示 10 条, 页签:
[1]
[2]
[3][4][5][6][7][8]
11楼
hh1988 发表于:2021/3/9 9:11:30
LOWV:=LLV(LOW,9);
HIGHV:=HHV(HIGH,9);
RSV:=EMA((CLOSE-LOWV)/(HIGHV-LOWV)*100,3);
K:EMA(RSV,3);
D:MA(K,3);//公式参数
KD:=CROSS(K,D);//开多条件
PD:=C<=AVGENTERPRICE-10*MINDIFF;//平多条件最新价低于买开仓价10个最小变动价位,多头止损;
PD:=(C-AVGENTERPRICE)>=20*MINDIFF;//平多条件最新价高于买开仓价20个最小变动价位,多头止赢
KK:=CROSS(D,K);//开空条件
PK:=C>=AVGENTERPRICE+10*MINDIFF;//平空条件高于卖开仓价10个最小变动价位,空头止损;
PK:=(AVGENTERPRICE-C)>=20*MINDIFF;//平空条件低于卖开仓价20个最小变动价位,空头止赢;
平空:SELLSHORT(PK,1,THISCLOSE); //平空信号
开多:BUY(KD AND HOLDING=0,1,THISCLOSE); //开多信号
平多:SELL(PD,1,THISCLOSE); //平多信号
开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE); //开空信号
}
{
信号语句排列规则——先平后开
“费率设置”按钮——用于合理设置模型“费率”,以便在图形上正确输出如下帐户信息:
持仓:holding,linethick0;
资产:asset,noaxis;
可用现金:cash(0),linethick0;
您可以在查看菜单->交易系统模板 中设置自己需要的模板
}
目前写的测试策略就是这样的
12楼
hh1988 发表于:2021/3/9 9:12:32
LOWV:=LLV(LOW,9);
HIGHV:=HHV(HIGH,9);
RSV:=EMA((CLOSE-LOWV)/(HIGHV-LOWV)*100,3);
K:EMA(RSV,3);
D:MA(K,3);//公式参数
KD:=CROSS(K,D);//开多条件
PD:=C<=AVGENTERPRICE-10*MINDIFF;//平多条件最新价低于买开仓价10个最小变动价位,多头止损;
PD:=(C-AVGENTERPRICE)>=20*MINDIFF;//平多条件最新价高于买开仓价20个最小变动价位,多头止赢
KK:=CROSS(D,K);//开空条件
PK:=C>=AVGENTERPRICE+10*MINDIFF;//平空条件高于卖开仓价10个最小变动价位,空头止损;
PK:=(AVGENTERPRICE-C)>=20*MINDIFF;//平空条件低于卖开仓价20个最小变动价位,空头止赢;
平空:SELLSHORT(PK,1,THISCLOSE); //平空信号
开多:BUY(KD AND HOLDING=0,1,THISCLOSE); //开多信号
平多:SELL(PD,1,THISCLOSE); //平多信号
开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE); //开空信号
}
{
信号语句排列规则——先平后开
“费率设置”按钮——用于合理设置模型“费率”,以便在图形上正确输出如下帐户信息:
持仓:holding,linethick0;
资产:asset,noaxis;
可用现金:cash(0),linethick0;
您可以在查看菜单->交易系统模板 中设置自己需要的模板
}
13楼
FireScript 发表于:2021/3/9 9:31:25
前面看错了,没注意到。
KD:=CROSS(K,D);//开多条件
PD:=C<=AVGENTERPRICE-10*MINDIFF;//平多条件最新价低于买开仓价10个最小变动价位,多头止损;
PD:=(C-AVGENTERPRICE)>=20*MINDIFF;//平多条件最新价高于买开仓价20个最小变动价位,多头止赢
KK:=CROSS(D,K);//开空条件
PK:=C>=AVGENTERPRICE+10*MINDIFF;//平空条件高于卖开仓价10个最小变动价位,空头止损;
PK:=(AVGENTERPRICE-C)>=20*MINDIFF;//平空条件低于卖开仓价20个最小变动价位,空头止赢;
你这个怎么能用同名变量呢。这样的话,实际运行中只执行后面的止盈。
14楼
FireScript 发表于:2021/3/9 9:35:23
LOWV:=LLV(LOW,9);
HIGHV:=HHV(HIGH,9);
RSV:=EMA((CLOSE-LOWV)/(HIGHV-LOWV)*100,3);
K:=EMA(RSV,3);
D:=MA(K,3);//公式参数
KD:=CROSS(K,D);//开多条件
PD1:=C<=AVGENTERPRICE-10*MINDIFF;//平多条件最新价低于买开仓价10个最小变动价位,多头止损;
PD2:=(C-AVGENTERPRICE)>=20*MINDIFF;//平多条件最新价高于买开仓价20个最小变动价位,多头止赢
KK:=CROSS(D,K);//开空条件
PK1:=C>=AVGENTERPRICE+10*MINDIFF;//平空条件高于卖开仓价10个最小变动价位,空头止损;
PK2:=(AVGENTERPRICE-C)>=20*MINDIFF;//平空条件低于卖开仓价20个最小变动价位,空头止赢;
空止盈:SELLSHORT(PK2,holding,THISCLOSE);
空止损:SELLSHORT(PK1,holding,THISCLOSE); //平空信号
开多:BUY(KD AND HOLDING=0,1,THISCLOSE); //开多信号
多止盈:SELL(PD2,holding,THISCLOSE);
多止损:SELL(PD1,holding,THISCLOSE);
开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE); //开空信号
hd:holding;
15楼
hh1988 发表于:2021/3/10 14:27:25
老师,哪个移动止损止盈代码是怎么写的的,盈利点30个点,止损15个点
16楼
FireScript 发表于:2021/3/10 14:29:11
这个有现成的。你照抄系统里面的那个移动止盈止损就行了。
![dvubb 图片点击可在新窗口打开查看](skins/default/filetype/png.gif)
此主题相关图片如下:temp.png
![dvubb 图片点击可在新窗口打开查看](UploadFile/2021-3/202131014285843139.png)
17楼
hh1988 发表于:2021/3/11 19:24:22
![](http://<br onload=)
![dvubb](skins/default/filetype/png.gif)
此主题相关图片如下:temp.png
![dvubb 按此在新窗口浏览图片](UploadFile/2021-3/202131117364536555.png)
"/>
开仓:CROSS(C,MA(C,5))AND C>MA(C,5)*1.00074;//开仓信号
开仓参考价: MAX(REF(MA(C,5),1),(MA(C,5)*1.00074));//开仓价
这个如何实现图表策略交易怎么写,必须开仓与开仓参考价同时满足条件才可行 如图2021年2月8号 11点附近 的开仓信号以及开仓参考价 平仓我自己设置止盈止损,止盈30个点,止损15个点
18楼
FireScript 发表于:2021/3/12 9:37:34
你这上面“开仓”是一个判断结果。但是“开仓参考价”则是一个具体的数值。具体要满足什么条件开仓 你要描述具体点 不然我这边无法处理的。
19楼
hh1988 发表于:2021/3/12 16:51:26
其实这里有开仓条件,可能是我不知道如何正确的表达吧。开仓条件:CROSS(C,MA(C,10))AND C>MA(C,5)*1.01
;开仓数值:MAX(REF(MA(C,10),1),(MA(C,5)*1.01));
就是达到这个开仓条件之后开后,然后根据这个开仓数值下单开仓,第一个信号开仓之后没有平仓的情况下,后面的开仓信号过滤掉
20楼
FireScript 发表于:2021/3/12 16:56:00
所以这个 开仓数值 是指下单价格吧。
开仓条件:CROSS(C,MA(C,10))AND C>MA(C,5)*1.01;
开仓数值:MAX(REF(MA(C,10),1),(MA(C,5)*1.01));
buy(开仓条件 and holding=0,1,limit,开仓数值);
平仓条件你可以自己加上去就行了。
共82 条记录, 每页显示 10 条, 页签:
[1]
[2]
[3][4][5][6][7][8]