Open=new CiOpen();
if(CheckPointer(Open)==POINTER_INVALID || !Open.Create(Symb.Name(),PERIOD_CURRENT))
return;
//---int bars=10;
double Temp[]; //Создаем массив для временного хранения входных данныхArraySetAsSeries(Temp,true); //Устанавливает флаг AS_SERIES
Open.GetData(0,bars,Temp); //Копируем необходимые данные в массив Temp
InputNormalize(Temp,bars); //Нормализуем данные в массиве
//---Как заменить значения в Open значениями из Temp?---
}
//+------------------------------------------------------------------+//| функция нормализации входных данных |//+------------------------------------------------------------------+void InputNormalize(double &buffer[],int bars)
{
double d1=-1;
double d2=1;
double x_min=buffer[ArrayMinimum(buffer,0,bars)];
double x_max=buffer[ArrayMaximum(buffer,0,bars)];
for(int i=0; i<bars; i++)
{
buffer[i]=(((buffer[i]-x_min)*(d2-d1))/(x_max-x_min))+d1;
}
return;
}
Для каждой выполняющейся mql4-программы поддерживается ряд предопределенных переменных, которые отражают состояние текущего ценового графика на момент запуска программы - эксперта, скрипта или пользовательского индикатора. Значение предопределенным переменным устанавливает клиентский терминал перед запуском mql4-программы на выполнение...
你好!
我在三棵松下感到困惑。
我设置了数字extern int a =2; extern int b =3; extern int c =4; 我现在如何设置数字abc,以便在改变a,或b, 或c时改变其值,与某个给定的d比较(例如d=344)?
谢谢你!
你好!
我在三棵松下感到困惑。
我设置了数字extern int a =2; extern int b =3; extern int c =4; 我现在如何设置数字abc,以便在改变a,或b, 或c时改变其值,与某个给定的d比较(例如d=344)?
谢谢你!
x = c + b*10 + a*100
x = c + b*10 + a*100
哦,我的天啊!我正在绞尽脑汁!谢谢你!
你好,2020.10.03_13:33 GMT+3。我采用了MetaTrader 4的标准移动平均线专家顾问。并开始改变它,使它变得有利可图。当试图在策略测试器中 使用OrderProfit()函数描述平仓条件时,专家顾问在该条件下停止平仓交易。它并没有走到关闭交易的程度。然而,我怀疑我是否正确地写了关闭条件。否则专家顾问将关闭交易。我可能会尝试写出交易的开盘价和最后的价格。一旦达到开盘价和最后价格之间的最大差额,并且这个差额被缩小--关闭交易。我附上了专家顾问文件。13:50 GMT+3。
你好!
我已经开始写一个函数来规范化输入数据。但我不能用归一化的数值 "替换 "原始数值。换句话说,我不能用Temp数组的新值来更新Open时间序列缓冲区的值。我的错误是什么?我有一种感觉,我正试图跨越OOP和非OOP))。
我相信可以用更简单的方法来做!"。在这种情况下,请教我)
你好!
我已经开始写一个函数来规范化输入数据。但我不能用归一化的数值 "替换 "原始数值。也就是说,我不能用Temp数组的新值来更新Open timeseries buffer中的值。我的错误是什么?我有一种感觉,我正试图跨越OOP和非OOP))。
我相信可以用更简单的方法来做!"。在这种情况下,请教我)
阅读语言文件
阅读语言文件
阿列克谢,谢谢你!现在很清楚,这是不可能的。
这是真的,我不完全是mql4。我正试图通过CiOpen类来 改变数据。我对Update方法感到困惑,它应该改变指定数组位置的元素。
阿列克谢,谢谢你!现在很清楚,这是不可能的。
这是真的,我没有确切的mql4。我正试图通过CiOpen类来 改变数据。我对Update方法感到困惑,它应该改变数组中指定位置的元素。
由于该问题是在mql4部分提出的,所以我就mql4进行了回答。你的问题中没有对mql5的提示。但结果是一样的。