当最新价高于开盘价时开多单,当最新价低于开盘价时开空单。
在持有多单时,当最新价低于开仓价10点时,平多开空,
在持有空单时,当最新价高于开仓价10点时,平空开多。
请帮忙这个公式怎样编写?
仅供参考
//当最新价高于开盘价时开多单,当最新价低于开盘价时开空单。
if c>o then
begin
sellshort(holding<0,0,market);
buy(holding=0,1,market);
end
if c<o then
begin
sell(holding>0,0,market);
buyshort(holding=0,market);
end
//在持有多单时,当最新价低于开仓价10点时,平多开空,
if holding>0 then
begin
if c<ENTERPRICE-10*mindiff then
begin
sell(holding>0,0,market);
buyshort(holding=0,1,market);
end
end
//在持有空单时,当最新价高于开仓价10点时,平空开多。
if holding<0 then
begin
if c>ENTERPRICE+10*mindiff then
begin
sellshort(holding<0,0,market);
buy(holding=0,1,market);
end
end
收盘价定义:最新的一笔成交价.
也就是说,在盘中有行情的时候,CLOSE就是最新价
在函数类表里的动态行情中 有一个DYNAINFO(7)
你看一下 是不是你要的最新价。
请问这个公式的运行模式序列模式吗?我想使用序列模式,刚才发帖时我忘说明了,不好意思。
用ENTERLONG的下单语句--在序列模式下,不能实现您的功能.
如果非要用序列,请使用后台程序化交易.
你好,帮忙看一下这个公式运行后和策略不符是什么原因?
//当最新价高于开盘价时开多单,当最新价低于开盘价时开空单。
if c>o then
begin
sellshort(holding<0,0,thisclose);
buy(holding=0,1,thisclose);
end
if c<o then
begin
sell(holding>0,0,thisclose);
buyshort(holding=0,thisclose);
end
//在持有多单时,当最新价低于开仓价10点时,平多开空,
if holding>0 then
begin
if c<ENTERPRICE-10*mindiff then
begin
sell(holding>0,0,thisclose);
buyshort(holding=0,1,thisclose);
end
end
//在持有空单时,当最新价高于开仓价10点时,平空开多。
if holding<0 then
begin
if c>ENTERPRICE+10*mindiff then
begin
sellshort(holding<0,0,thisclose);
buy(holding=0,1,thisclose);
end
end