问题正在解决中
ATR是啥?
设最新价格为A 当最新价格满足 多单开单价+0.5N 时 加 0.5*J 手
或 空单开单价-0.5N 时 加0.5*J 手, 直到最大持仓到达M
这两个条件 是最新价A>=多单开单价+0.5N 时 加 0.5*J 手
最新价A<=空单开单价-0.5N 时 加0.5*J 手
是这样吗?
平仓条件 当价格回调至 A-2*F 的时候止损
F是什么?
平仓条件 当价格回调至 A-2*F 的时候止损, 将所有持仓全平 或者5分钟K线图里 10均线死叉或 金叉60均线 所有持仓全平
后两个全平条件 和开仓的条件相同啊?请检查一下。除了这两个全平的没有写,其他的都写了。
你看看,参考一下。
说明:
1 F 定义成变量,
2 "2接下来需要引用长周期的参数, 例如日K线中的 某日K线收盘价跌破60均线, 程序启用ATR加仓"
这个某日收盘价 被设置成 可输入的一个参数D 默认值是1111010 是11年10月10日, 变量mz 就是 设置的某日K线收盘价。
input:D(1111010,1,1201010,1),J(2,1,10,1),M(10,1,20,1),f(1,1,111,1);
N:"atr.atr#DAT";
A:=c;
m10:=MA(c,10);
m60:=MA(c,60);
//1. 最普通的均线交叉系统
if m10<m60 and c<m60 then
begin
sell(holding>0,0,market);
buyshort(holding=0,1,market);
end
if m10>m60 and c>m60 then
begin
sellshort(holding<0,0,market);
buy(holding=0,1,market);
end
//2 接下来需要引用长周期的参数
mz:REFDATE(CLOSE,d);
if mz<m60 then
begin
if holding<m and holding>0 and A>ENTERPRICE+INTPART(0.5*N) then
buy(holding>0,0.5*J,market);
if holding<0 and holding>-M and A<ENTERPRICE-INTPART(0.5*N) then
buyshort(holding<0,0.5*J,market);
//平仓条件 当价格回调至 A-2*F 的时候止损
if c<A-2*f then
begin
sell(holding>0,0,market);
sellshort(holding<0,0,market);
end
end
F是什么?