各位高手大大们 大家好 小弟我是程式爆弱鲁蛇
最近要从Multicharts转换到MT5
有一个很简单的Powerlanguage期货讯号 想要转换成MT5的EA
交易逻辑很简单
1、就是只有一条MA简单移动平均线
(周期长度可任意指定 例如60、144、256、640等等)
2、每天指定时间的收盘价 (例如每天早上09:30 晚上21:50 可任意修改时间)
只要大于MA 下一根K线就市价单进场作多
buy next bar at market;
反之小于MA 下一根K线就市价单进场作空
sellshort next bar at market;
3、进场之后 只要触到设定的停利点或停损点 就触价平仓
以台指期为例 如10050点多单进场 设定+/-30点 (停利停损点数可任意指定)
往上触到10080就市价停利 往下触到10020就市价停损
外汇的话 当然就是改成外汇的单位
4、设定最后出场时间 (例如台指期就是设定下午1300 可任意修改)
到了最后出场时间 都没有往上或往下触到默认的价格 (例如只有10062或10027)
就直接市价单平仓
外汇的部分 可能就要变成晚上九点多或十点多进场
隔天凌晨五点前 甚至隔天晚上八点前 都没触到默认点位 就市价平仓出场
请问版上有没有好心的大大 能帮我写成MT5的EA
小弟我可以提供报酬 请您提供报价 感恩不尽啊
底下是Powerlanguage的原始程式码(多单部分 空单逻辑一样)
提供参考
[IntrabarOrderGeneration=False];
inputs:
EntryTime(905),
ExitTime(1300),
MA1L(200),
profittarget(30),
stoploss(30);
variables:
MA1(0),
mark(0);
if date<>date[1] then begin
mark=0;
end;
MA1=average(close,MA1L);
if time=EntryTime
and close>MA1
then begin
mark=1;
end;
if time=EntryTime
and mark=1
and EntriesToday(D)<1
then begin
buy ("EntryLong")next bar at market;
end;
if time=ExitTime
then begin
sell ("ExitLong")next bar at market;
end;
setstopcontract;
setprofittarget(profittarget*bigpointvalue);
setstoploss(stoploss*bigpointvalue);