void AAA()
{
int Handle; // Файловый описательstring File_Name = "AAA.csv"; // Имя открываемого файлаstring str_1 = ""; // 1 Номер индекса по первому измерениюstring str_2 = ""; // 2 Номер индекса по второму измерениюstring str_3 = ""; // 3 Значениеstring str_4 = ""; // 4 Значениеstring str_5 = ""; // 5 Значение
Handle=FileOpen(File_Name, FILE_READ, ";"); // Открытие файлаwhile(FileIsEnding(Handle)==false) // До тех пор, пока файловый...
{ // ...указатель не в конце файла// Чтение данных из строки до файлового разделителя
str_1 = FileReadString(Handle); // 1 Номер индекса по первому измерению
str_2 = FileReadString(Handle); // 2 Номер индекса по второму измерению
str_3 = FileReadString(Handle); // 3 Значение
str_4 = FileReadString(Handle); // 4 Значение
str_5 = FileReadString(Handle); // 5 Значениеif(FileIsEnding(Handle)==true) // Файловый указатель в конце файлаbreak; // Выход из цикла чтения
????????????????????????????????????????????????????
}
FileClose(Handle); // Закрываем файлreturn; // Выход из функции
}
void AAA()
{
int Handle; // Файловый описательstring File_Name = "AAA.csv"; // Имя открываемого файлаstring str_1 = ""; // 1 Номер индекса по первому измерениюstring str_2 = ""; // 2 Номер индекса по второму измерениюstring str_3 = ""; // 3 Значениеstring str_4 = ""; // 4 Значениеstring str_5 = ""; // 5 Значение
Handle=FileOpen(File_Name, FILE_READ, ";"); // Открытие файлаwhile(FileIsEnding(Handle)==false) // До тех пор, пока файловый...
{ // ...указатель не в конце файла// Чтение данных из строки до файлового разделителя
str_1 = FileReadString(Handle); // 1 Номер индекса по первому измерению
str_2 = FileReadString(Handle); // 2 Номер индекса по второму измерению
str_3 = FileReadString(Handle); // 3 Значение
str_4 = FileReadString(Handle); // 4 Значение
str_5 = FileReadString(Handle); // 5 Значениеif(FileIsEnding(Handle)==true) // Файловый указатель в конце файлаbreak; // Выход из цикла чтения// Завели строковый массив// Преобразование типов данных и запись в масссивArrayResize(Mas1, SizeMas1+1); // Увеличили размер массива Mas1
Mas1[SizeMas1][0] = StrToInteger(str_1); // 0 Номер индекса по первому измерению
Mas1[SizeMas1][1] = StrToInteger(str_2); // 1 Номер индекса по второму измерению
Mas1[SizeMas1][2] = StrToDouble(str_3); // 2 Значение
Mas1[SizeMas1][3] = StrToDouble(str_4); // 3 Значение
Mas1[SizeMas1][4] = StrToDouble(str_5); // 4 Значение
SizeMas1++; // Новый размер массива Mas1// Что дальше ????????????????????????????????????????????????????
}
FileClose(Handle); // Закрываем файлreturn; // Выход из функции
}
使用这个https://docs.mql4.com/ru/indicators/imaonarray
请看一下代码,这是否正确?
现在他们会开始向你解释,这个角度取决于图形的缩放比例,无法做到......
但如果你不取角度,而只取角度的正切,你就可以做到这一点。
我想知道是否有可能找出它是什么,以及它应该如何确定。 我知道在学校的几何学中,他们教切线和切线,但可惜我不记得了)我在论坛上问过Fresh,但我没有得到明确的答案。
如果Yandex被禁止,你可以使用谷歌。
简而言之,直角三角形中一个角的切线是对角的腿与邻角的腿的比率。
将此转化为MT图中的情况,我们得到--对立的腿将等于点(以百分数计),相邻的腿等于条(也以百分数计)。
例子。
欧元兑美元开盘6.03 1.3732 开盘7:03 1.3860 总计128点。在M1,1440条tan=128/1440=0.08889
这个方程式基本上用于ObjectGetValueByShift()函数中
表格的第一列包含数组第一维的索引,
第二列包含数组第二维的索引,
第三列和更多列包含数组第三维的数值本身。
请解释一下如何将表(*.csv)中的数据放入一个三维静态数组中。
表的第一列在数组的第一维上有一个索引。
第二列是数组第二维的索引。
在第三列和更多的列中--根据数组的第三维度,数值本身。
如果用于在Excel本身的分析,则为汇总表。
或者显示一些数据,看来我们必须要有辅助的字符串数组来匹配索引-值。
....看来我们必须要有辅助的字符串数组来匹配索引值。
如何删除所有像OBJ_ARROW_RIGHT_PRICE 的对象?
命令ObjectsDeleteAll(OBJ_ARROW_RIGHT_PRICE)并没有删除!即使在改变时间框架后(强行重绘整个图表)。
我写了一个简单的脚本,它注释了屏幕上的内容。
Alert("obj_arrow_right_price=",OBJ_ARROW_RIGHT_PRICE) ; // =36
ObjectCreate("MyArrow",OBJ_ARROW_RIGHT_PRICE,0,Time[1],Open[1]) ; //创建了OBJ_ARROW_RIGHT_PRICE
Alert("objectTipe=", ObjectType("MyArrow"), "ARROW CODE=",ObjectGet("MyArrow",OBJPROP_ARROWCODE) ) ; // nightmare "objecType=" =22, 不明白为什么不是像第一行中的36?
ResetLastError()。
Alert("脚本删除箭头右价=",ObjectsDeleteAll(OBJ_ARROW_RIGHT_PRICE)," lastError=",GetLastError() ) ; //删除对象=0,错误代码=0
我继续实验,写道:ObjectsDeleteAll(22); //被删除的对象=0了
如何删除所有像 OBJ_ARROW_RIGHT_PRICE 这样的对象?
再读一次帮助。
对象删除所有
删除指定类型和指定子窗口中的所有对象。
如果对象是在主图表子窗口中。
再次阅读帮助。
对象删除所有
删除图表中指定类型和指定子窗口的所有对象。
如果对象在主图形子窗口中。