自动挂单与管理订单
- 利用RSI 自动挂单;
- 周末降低风险,下周恢复持仓;
- 邮件发送一些有用的信息。
使用建议:
1. 设置测试模式为 true 以进行回测,false 以进行实盘交易:
extern bool testmode = false;//true:用于回测
2. 如果在测试模式下,请仅设置一个交易品种,例如:
extern string tradesymbol1 = "EURUSDm_802_2802_1602_200_860"; extern string tradesymbol2 = ""; extern string tradesymbol3 = ""; extern string tradesymbol4 = ""; extern string tradesymbol5 = ""; extern string tradesymbol6 = "";
如果是在真实账户模式下,设置 testmode 为 false,并配置交易品种,如下所示(使用 "," 分隔品种,使用 "_" 分隔品种参数):
extern string tradesymbol1 = "EURUSDm_802_2802_1602_200_860,USDCHFm_506_2606_1506_120_600"; extern string tradesymbol2 = "USDJPYm_460_2802_1302_100_320"; extern string tradesymbol3 = ""; extern string tradesymbol4 = ""; extern string tradesymbol5 = ""; extern string tradesymbol6 = "";
EURUSDm_802_2802_1602_200_860 的含义:
- 交易品种:EURUSDm(m 代表我的 Exness 小账户,可能需要修改为您自己的品种)
- 挂单点数:802(挂单间隔)
- 周末点数加幅:2802(周末扩大点数)
- 取消点数:1602(当间隔超过此点数时,关闭挂单)
- 移动止损:200(移动止损)
- 虚拟止盈:860(虚拟止盈)
3. 如果您想在周末删除挂单,请设置 weekenddelete=true;如果您想扩大挂单间隔并在下周恢复,请设置 weekenddelete=false。
extern bool weekenddelete = false;//true: 删除 false: 修改
4. 周末模式的开始和结束时间(5 表示星期五,7 表示星期日(时间为 GMT,可能需要根据您的当地时间进行调整,默认参数在北京时间下运行良好):
//周五交易结束时间 extern int weekendbeginday = 5; extern string weekendbegintime = "20:30";//周五 20:30 extern int weekendendday = 7; extern string weekendendtime = "23:30";//周日 20:30
5. 所有您希望通过邮件接收 RSI 值提示(>70 或 <30)并定期报告给您的品种。显然,如果您的账户不是迷你账户,您需要修改 AUDJPYm。
string symbolsstr1 = "AUDJPYm,AUDCADm,AUDCHFm,AUDNZDm,AUDSGDm,AUDUSDm,CADCHFm,CADHKDm,CADJPYm,CHFJPYm,CHFPLNm,CHFSGDm,EURAUDm,EURBRLm,EURCADm,EURCHFm,EURDKKm,EURGBPm,EURHKDm,EURHUFm,EURJPYm,EURMXNm"; string symbolsstr2 = "GBPCHFm,GBPJPYm,GBPNZDm,GBPUSDm,HKDJPYm,HUFJPYm,MXNJPYm,NZDCADm,NZDCHFm,NZDJPYm,NZDSGDm,NZDUSDm,SGDJPYm,USDBRLm,USDCADm,USDCHFm,USDCZKm,USDDKKm,USDHKDm,USDHUFm,USDJPYm,USDMXNm"; string symbolsstr3 = "EURNOKm,EURNZDm,EURPLNm,EURRUBm,EURSEKm,EURSGDm,EURTRYm,EURUSDm,EURZARm,GBPAUDm,GBPCADm,USDNOKm,USDPLNm,USDRONm,USDRUBm,USDSEKm,USDSGDm,USDTRYm,USDZARm,XAGUSDm,XAUUSDm,ZARJPYm"; long sendmininterval = 3600;
6. RSI 配置:
//rsi extern int rsitimeframe = PERIOD_H4; extern int rsiperiod = 14; extern ENUM_APPLIED_PRICE rsiappliedprice = PRICE_CLOSE; extern int rsishift = 0; extern double rsiupperline = 70; extern double rsilowerline = 30;
7. 使用 magicweekendexpiration 来识别周末模式,如果有人有更好的方法,请告诉我。
int magicweekendexpiration = 1577836800;//2020-1-1 0:0:0 int值:1577836800
8. 其他注意事项:
如果切换到周末模式失败,EA 将发送邮件并尝试 MAX_MODIFY_TRY_TIME(默认 100 次)次,直到成功。
不应用止损,如果某个品种的小损失(最小买入或最大卖出订单)超过挂单点数,EA 将挂另一个相同品种的订单。
在测试模式下,如果权益低于余额的 95%,EA 将写入状态到警告文件。
if(((AccountEquity()/AccountBalance()) < 0.95)) { WriteToWarningFile(); }
如果您发现任何错误或有建议,请随时告诉我。
评论 0