但是这个有显示了2个图表,求解
1. “转寄” -- 这个翻译不准确,应该是“跳转”,点击之后,跳到后面的日期。通常用于测试过程中快速跳转到指定的位置
2. 多币种是否所有品种图表都显示,一般来说只要把品种选入到的“数据窗口”,应该有图表显示的,你那个没有显示其他品种图表,具体要看代码。
Ziheng Zhuang:
1. “转寄” -- 这个翻译不准确,应该是“跳转”,点击之后,跳到后面的日期。通常用于测试过程中快速跳转到指定的位置
2. 多币种是否所有品种图表都显示,一般来说只要把品种选入到的“数据窗口”,应该有图表显示的,你那个没有显示其他品种图表,具体要看代码。
好的 谢谢了 。我现在还有一个棘手的问题就“延迟”到底是接收报价有延迟,还是下单有延迟。 我现在就是测试一个EA,我选延迟=0则测试效果很好。但是如果选择316ms(系统测试我的本机延迟)就是亏损的。哪怕我选延迟为1ms 也是亏损的。 天差地别。 谢谢
如果选择有延迟 1ms
我的交易逻辑是盈利15美金时平仓,当选延迟=0时,平仓结果盈利在15美元左右。 但是选延迟=1ms时,平仓结果盈利不等于15美金而是负数。好巧基本是都是负数。 请帮我解答,万分感谢
这个所谓的“延迟””就是模拟我们实际交易中的交易执行所消耗的时间,这中间可能存在滑点。
EA本地发送指令,通过终端,再通过网络,发送到服务器,服务器再返回结果给终端,这个过程是需要时间的,在这个过程中,实际的价格可能发生了微小的变化,因而实际的交易可能存在滑点。
这些微小的滑点积累下来,就导致本来微薄的利润变成了最终的亏损。
2、多货币对回测,为什么可视化只有一个回测窗口? 见附件2
部分源码如下:
#property copyright "Copyright 2016, Dmitrievsky Max."
#property link "https://www.mql5.com/ru/users/dmitrievsky"
#property version "1.01"
#property strict
#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
#include <Trade\AccountInfo.mqh>
CTrade m_Trade;
CPositionInfo m_Position;
CAccountInfo myaccount;
CPositionInfo myposition;
input int spread=35; //Spread deviations in points (between synthetic and base pair)
input long delay=1000; //Delays in milliseconds (between synthetic and base pair)
input int checkout=5000; //Check signal every (ms)
input string ettings="MONEY MANAGEMENT SETTINGS";
input string SymbolSuffix="";
input int MaximumSpread = 30;
input int StopLoss=250;
input double MaximumRisk=0.01;
int PricesDOM = 5;
double MedianEURUSD, MedianGBPUSD, MedianEURGBP, MedianSynthetic,
Diff, EURdiff, GBPdiff, GBPsynthetic, EURsynthetic,
DiffMax, DiffMin, EurDiffMax, EurDiffMin, GbpDiffMax, GbpDiffMin;
long msTime,esTime,gsTime,mEur,mGbp,mEurGbp,timeDiff,timeEurDiff,timeGbpDiff;
MqlTick tickEUR,tickGBP,tickEURGBP;
int OnInit()
{
EventSetMillisecondTimer(checkout);
//---
GetSymbolByName("EURUSD"+SymbolSuffix); //выбираем символы в "обзоре рынка" если они отсутствуют
GetSymbolByName("GBPUSD"+SymbolSuffix);
GetSymbolByName("EURGBP"+SymbolSuffix);