AlexeyVik: Agora vão começar a explicar-lhe que o ângulo depende da escala do gráfico e não pode ser feito... Mas se você não tomar o ângulo, mas apenas a tangente do ângulo, você pode fazer isso.
Eu me pergunto se é possível descobrir o que é e como deve ser determinado. Eu sei que na escola de geometria ensinavam as tangentes e as catangentes, mas infelizmente não me lembro) perguntei ao Fresh no fórum, mas não recebi uma resposta definitiva.
Favor explicar como encaixar os dados de uma tabela (*.csv) em uma matriz estática tridimensional. A primeira coluna da tabela contém o índice para a primeira dimensão da matriz, A segunda coluna contém o índice para a segunda dimensão da matriz, A terceira e outras colunas contêm os próprios valores para a terceira dimensão da matriz.
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; // Выход из функции
}
Leo59: Favor explicar como colocar os dados de uma tabela (*.csv) em uma matriz estática tridimensional. A primeira coluna da tabela tem um índice sobre a primeira dimensão da matriz, A segunda coluna é o índice para a segunda dimensão da matriz, Na terceira e outras colunas - os próprios valores de acordo com a terceira dimensão da matriz.
Se para análise no próprio Excel, a tabela de resumo.
Ou mostrar alguns dos dados, parece que teremos de ter matrizes de cordas auxiliares que corresponderão ao valor do índice.
.... parece que teremos de ter matrizes de cordas auxiliares que corresponderão ao valor do índice.
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; // Выход из функции
}
ObjectCreate("MyArrow",OBJ_ARROW_RIGHT_PRICE,0,Time[1],Open[1]) ; // criado OBJ_ARROW_RIGHT_PRICE
Alerta("objectTipe=", ObjectType("MyArrow"), "ARROW CODE=",ObjectGet("MyArrow",OBJPROP_ARROWCODE) ) ; // pesadelo "objectType=" =22, não entendeu porque não 36 como na primeira linha ?
ResetLastError() ;
Alert("script delete arrow right price=",ObjectsDeleteAll(OBJ_ARROW_RIGHT_PRICE)," lastError=",GetLastError() ) ; // objetos excluídos =0, código de erro =0
Use este https://docs.mql4.com/ru/indicators/imaonarray
Por favor, olhe o código, isto é correto?
Agora vão começar a explicar-lhe que o ângulo depende da escala do gráfico e não pode ser feito...
Mas se você não tomar o ângulo, mas apenas a tangente do ângulo, você pode fazer isso.
Eu me pergunto se é possível descobrir o que é e como deve ser determinado. Eu sei que na escola de geometria ensinavam as tangentes e as catangentes, mas infelizmente não me lembro) perguntei ao Fresh no fórum, mas não recebi uma resposta definitiva.
Se Yandex for banido, você pode usar o Google.
Em resumo, a tangente de um ângulo em um triângulo de ângulo reto é a razão entre a perna oposta e a perna adjacente.
Traduzindo isto para a situação no diagrama MT, obtemos - a perna oposta será igual aos pontos (em pct.) e a adjacente em barras (também em pct.).
Exemplo:
EURUSD abertura 6,03 1,3732 abertura 7:03 1,3860 total 128 pips. Em M1 1440 barras tan = 128/1440=0,08889
Esta equação é basicamente usada na função ObjectGetValueByShift()
A primeira coluna da tabela contém o índice para a primeira dimensão da matriz,
A segunda coluna contém o índice para a segunda dimensão da matriz,
A terceira e outras colunas contêm os próprios valores para a terceira dimensão da matriz.
Favor explicar como colocar os dados de uma tabela (*.csv) em uma matriz estática tridimensional.
A primeira coluna da tabela tem um índice sobre a primeira dimensão da matriz,
A segunda coluna é o índice para a segunda dimensão da matriz,
Na terceira e outras colunas - os próprios valores de acordo com a terceira dimensão da matriz.
Se para análise no próprio Excel, a tabela de resumo.
Ou mostrar alguns dos dados, parece que teremos de ter matrizes de cordas auxiliares que corresponderão ao valor do índice.
.... parece que teremos de ter matrizes de cordas auxiliares que corresponderão ao valor do índice.
Como apagar todos os objetos como OBJ_ARROW_RIGHT_PRICE?
Objetos de comandoDeleteAll(OBJ_ARROW_RIGHT_PRICE) não apaga! mesmo depois de mudar o cronograma (para redesenhar todo o gráfico com força)
Escrevi um roteiro simples, nos comentários que ele escreve na tela:
Alerta("obj_arrow_right_price=",OBJ_ARROW_RIGHT_PRICE) ; // =36
ObjectCreate("MyArrow",OBJ_ARROW_RIGHT_PRICE,0,Time[1],Open[1]) ; // criado OBJ_ARROW_RIGHT_PRICE
Alerta("objectTipe=", ObjectType("MyArrow"), "ARROW CODE=",ObjectGet("MyArrow",OBJPROP_ARROWCODE) ) ; // pesadelo "objectType=" =22, não entendeu porque não 36 como na primeira linha ?
ResetLastError() ;
Alert("script delete arrow right price=",ObjectsDeleteAll(OBJ_ARROW_RIGHT_PRICE)," lastError=",GetLastError() ) ; // objetos excluídos =0, código de erro =0
Continuo o experimento escrevendo: ObjetosDeleteAll(22) ; // objetos apagados =0 novamente
Como apagar todos os objetos como OBJ_ARROW_RIGHT_PRICE ?
Leia a ajuda mais uma vez:
ObjetosDeleteAll
Apaga todos os objetos de um tipo especificado e em uma subjanela especificada.
Se os objetos estiverem na subjanela do gráfico principal:
Leia a ajuda novamente:
ObjetosDeleteAll
Deleta todos os objetos do tipo especificado e na subjanela especificada do gráfico.
Se os objetos estiverem na subjanela principal do gráfico: