Artem, ou é um corrico discreto ou você não sabe sobre o que está escrevendo!!!
Em seu último post você falou sobre a classificação. Explicou a você que não há dependência de classificação.
Eu vi e PARTICIPei em uma das discussões sobre seleção de pedidos por tempo. A conclusão foi que os pedidos agora são colocados no banco de dados de pedidos de acordo com o horário em que foram enviados ao servidor. Mas TEORETALMENTE há um medo de que os desenvolvedores possam mudar isso. Esse foi o fim dessa discussão. Como especialista em banco de dados, asseguro que este medo é infundado, uma mudança está fora de questão. Você pode encaminhar a questão para os desenvolvedores. Se eu escrever algo, eu sei o que escrevo. É o 50º aniversário da programação. Se você notar em minhas mensagens alguma confusão de seu ponto de vista - escreva-me pessoalmente. Explicarei, e suas dúvidas serão dissipadas. Mas aqui é improvável que as brigas sejam apropriadas. Escrevi ao homem um roteiro - ele disse obrigado. Não é bom?
Foio que pensaram todas aquelas pessoas que de repente se viram dependentes da triagem. A lógica das pessoas entrou em colapso. Em seguida, a dependência da triagem desapareceu novamente. Mas já o fez. Se você quiser depender não de seu programa, mas de uma hipotética triagem invariante, você tem o direito, mas na linha de ajuda para iniciantes você não tem esse direito - de dar um roteiro e não mencionar o fato de que ele pode falhar um dia. Procure por tais discussões no mql4.com - cerca de 6 - 7 anos atrás.
Foio que eu mencionei - a pessoa estava falando de perda, não de perda.
Obrigado ele disse - educado, mas ele não sabe se é certo ou errado ;)
Foio que eu mencionei - o homem estava falando de perda, não de perda.
Ele disse obrigado - é educado, mas ele não sabe se é certo ou errado ;)
Veja cuidadosamente o que o homem escreveu.
X = OrderProfit( ); // запомнить величину тейкпрофитаif (OrderSelect (Ht-1,SELECT_BY_POS, MODE_HISTORY)) // если ПОСЛЕДНИЙ ордер if ( OrderType ()==OP_SELL) // СЕЛif(X < 0) // и если этот сел закрылся по стопу
Segue-se que ele estava se referindo à perda de ordens. É assim que ele entende a perda de carga. Ele não tem a palavrastoploss.
Também queria escrever que as paradas são um nome generalizado para StopLoss e TakeProfit. Para ver isso, digite 130 no MetaEditor e pressione F1
Pára. Plural.
Estou trabalhando aqui, você está me distraindo.
É melhor dizer datatime --> TimeToStruct -->MqlDateTime Como converter para datatime agora ???
виталик: Na tabela horária foi traçada uma linha entre o alto e o baixo
//+-------------------------------------------------------+//| на H1 суточную линию между хая и лоу PROBA.mq4|//+-------------------------------------------------------+#property strictvoidOnStart()
{
// Удалим все объектыObjectsDeleteAll();
string Символ = "GBPUSD";
datetime Первый, Последний;
int Период=PERIOD_H1;
// Прежде всего узнаем дату и время последнего бара
Последний = iTime(Символ, Период, 0);
Alert("Последний бар на часовом ",Последний);
// Теперь получить начало суток, обнулив часы// Для этого преобразуем время последнего бара в структуруMqlDateTime MqlПервый;
TimeToStruct(Последний,MqlПервый);
MqlПервый.hour=0;
// Терерь надо обратно преобразовать во время
Первый=StructToTime(MqlПервый);
Alert("Первый бар на часовом ",Первый); // Смотрим начало первого бара суток// По времени определим номер первого бара сутокint НомерПервого=iBarShift(Символ, PERIOD_H1,Первый);
Alert("Первый бар на часовом под номером ",НомерПервого);
// Можно было просто узнать время начала бара на D1
// Теперь у нас есть НомерПервого бара, а номер послелнего = 0// Найдем на этом интервале номера баров, где макс и мин// iHighest и iLowest находят номер бара с макс и мин ценойint БарМакс = iHighest(Символ, // symbol = инструмента
Период, // timeframe = ПериодMODE_HIGH, // Наибольшая цена бара
НомерПервого+1, // Количество баров0); // Начальный барint БарМин = iLowest(Символ,
Период,
MODE_LOW, // Наименьшая цена бара
НомерПервого+1,
0);
Alert("Максимальный бар = ", БарМакс, " Минимальный бар = ", БарМин);
// iHigh и iLow дают макс и мин цены указанного бараdouble max_price=iHigh(Символ, Период, БарМакс);
double min_price=iLow (Символ, Период, БарМин);
Alert("Максимум цены = ", max_price, " Минимум цены = ", min_price);
// Проводим линиюObjectCreate("Макс_Мин",OBJ_TRENDBYANGLE,0, Time[БарМакс], max_price, Time[БарМин], min_price);
ObjectSet("Макс_Мин",OBJPROP_RAY,false); // Выключить свойство бесконечного луча// Теперь хорошо бы узнать уголAlert("Угол = ", ObjectGetDouble(0,"Макс_Мин",OBJPROP_ANGLE));
}
// Devolve 0,0 O ângulo deve ser ajustado e depois deve ser obtido. // Então, conhecendo a diferença de preço e o número de barras entre Max e Min, o ângulo deve ser calculado. // Acho que poderia ser mais curto...
// Retorna 0,0 O ângulo deve ser ajustado e depois obtido. // Então, conhecendo a diferença de preço e o número de barras entre Max e Min, o ângulo deve ser calculado // Acho que poderia ser mais curto...
Para que quero usá-lo - tenho uma série de filtros e opções de gerenciamento de posição em minha EA - quero combiná-los, inclusive fazendo mini-conjuntos (combinações pré-fabricadas) - como resultado, obterei dados para análise, sem ser tendencioso em relação à amostra, o que, espero, expandirá os horizontes de percepção da influência das configurações sobre o resultado. O resultado será uma série de resultados que analisarei em detalhes. E, há outra razão, tenho uma classe para coleta de estatísticas que guarda um número limitado de variáveis em um arquivo, o que impede uma análise detalhada.
// Retorna 0,0 O ângulo deve ser ajustado e depois obtido. // Então, conhecendo a diferença de preço e o número de barras entre Max e Min, o ângulo deve ser calculado // Acho que poderia ser mais curto...
Acho que preciso olhar para o gráfico como um indicador, preciso de uma maneira diferente de olhar os indicadores, por favor me diga se o indicador está certo ou não.
#property indicator_chart_windowexternint boom = 1;
//=================================void fishka(int ma,int mi,double map,double mip) // ф-ция
{
ObjectCreate("Макс_Мин",OBJ_TRENDBYANGLE,0, Time[ma], map, Time[mi], mip);// Проводим линиюObjectSet("Макс_Мин",OBJPROP_RAY,false); // Выключить свойство бесконечного луча
}
int deinit()
{
ObjectsDeleteAll();// Удалим все объектыreturn(0);
}
void start()
{
string Символ = "GBPUSD";
datetime Первый, Последний;
int Период=PERIOD_H1;
Последний = iTime(Символ, Период, 0);// Прежде всего узнаем дату и время последнего бараif(boom){
Alert("Последний бар на часовом ",Последний);}
MqlDateTime MqlПервый; // Теперь получить начало суток, обнулив часыTimeToStruct(Последний,MqlПервый); // Для этого преобразуем время последнего бара в структуру
MqlПервый.hour=0;
Первый=StructToTime(MqlПервый); // Терерь надо обратно преобразовать во времяif(boom){
Alert("Первый бар на часовом ",Первый);} // Смотрим начало первого бара сутокint НомерПервого=iBarShift(Символ, PERIOD_H1,Первый);// По времени определим номер первого бара сутокif(boom){
Alert("Первый бар на часовом под номером ",НомерПервого);}
// Можно было просто узнать время начала бара на D1// Теперь у нас есть НомерПервого бара, а номер послелнего = 0// Найдем на этом интервале номера баров, где макс и мин// iHighest и iLowest находят номер бара с макс и мин ценойint БарМакс = iHighest(Символ, // symbol = инструмента
Период, // timeframe = ПериодMODE_HIGH, // Наибольшая цена бара
НомерПервого+1, // Количество баров0); // Начальный барint БарМин = iLowest(Символ,Период,MODE_LOW,НомерПервого+1,0); // Наименьшая цена бараif(boom){
Alert("Максимальный бар = ", БарМакс, " Минимальный бар = ", БарМин);}
double max_price=iHigh(Символ, Период, БарМакс); // iHigh и iLow дают макс и мин цены указанного бараdouble min_price=iLow (Символ, Период, БарМин);
fishka(БарМакс,БарМин,max_price,min_price); // ф-цияif(boom){
Alert("Максимум цены = ", max_price, " Минимум цены = ", min_price);
Alert("Угол = ", ObjectGetDouble(0,"Макс_Мин",OBJPROP_ANGLE));} // Теперь хорошо бы узнать угол
}
Se às 4 da manhã - ainda não há muitos bares por hoje. No H4 há apenas 6 barras em um dia. você tem que definir o número de barras a serem procuradas ou o número de travessias.
Longas distâncias = tendência
Tentei executá-lo como um roteiro, ele funciona, mas se eu compilá-lo como um EA, todas as linhas estão próximas umas das outras e eu não entendo qual é o problema.
Artem, ou é um corrico discreto ou você não sabe sobre o que está escrevendo!!!
Em seu último post você falou sobre a classificação. Explicou a você que não há dependência de classificação.
Eu vi e PARTICIPei em uma das discussões sobre seleção de pedidos por tempo. A conclusão foi que os pedidos agora são colocados no banco de dados de pedidos de acordo com o horário em que foram enviados ao servidor. Mas TEORETALMENTE há um medo de que os desenvolvedores possam mudar isso. Esse foi o fim dessa discussão. Como especialista em banco de dados, asseguro que este medo é infundado, uma mudança está fora de questão. Você pode encaminhar a questão para os desenvolvedores. Se eu escrever algo, eu sei o que escrevo. É o 50º aniversário da programação. Se você notar em minhas mensagens alguma confusão de seu ponto de vista - escreva-me pessoalmente. Explicarei, e suas dúvidas serão dissipadas. Mas aqui é improvável que as brigas sejam apropriadas. Escrevi ao homem um roteiro - ele disse obrigado. Não é bom?
Foio que pensaram todas aquelas pessoas que de repente se viram dependentes da triagem. A lógica das pessoas entrou em colapso. Em seguida, a dependência da triagem desapareceu novamente. Mas já o fez. Se você quiser depender não de seu programa, mas de uma hipotética triagem invariante, você tem o direito, mas na linha de ajuda para iniciantes você não tem esse direito - de dar um roteiro e não mencionar o fato de que ele pode falhar um dia. Procure por tais discussões no mql4.com - cerca de 6 - 7 anos atrás.
Foio que eu mencionei - a pessoa estava falando de perda, não de perda.
Obrigado ele disse - educado, mas ele não sabe se é certo ou errado ;)
Foio que eu mencionei - o homem estava falando de perda, não de perda.
Ele disse obrigado - é educado, mas ele não sabe se é certo ou errado ;)
Veja cuidadosamente o que o homem escreveu.
Segue-se que ele estava se referindo à perda de ordens. É assim que ele entende a perda de carga. Ele não tem a palavrastoploss.
Também queria escrever que as paradas são um nome generalizado para StopLoss e TakeProfit. Para ver isso, digite 130 no MetaEditor e pressione F1
Pára. Plural.
Estou trabalhando aqui, você está me distraindo.
É melhor dizer datatime --> TimeToStruct -->MqlDateTime Como converter para datatime agora ???
Veja cuidadosamente o que o homem escreveu
Segue-se que ele estava se referindo à perda de ordens. É assim que ele entende parar. Ele não tem a palavrastoploss.
Também queria dizer-lhe que as paradas são generalizadas StopLoss e TakeProfit. Para ver isso, digite 130 no MetaEditor e pressione F1
Pára. Plural.
Estou trabalhando aqui, você está me distraindo.
Digamos melhor datatime --> TimeToStruct -->MqlDateTime Como converter de volta para datatime ???
StructToTime()
// Devolve 0,0 O ângulo deve ser ajustado e depois deve ser obtido.
// Então, conhecendo a diferença de preço e o número de barras entre Max e Min, o ângulo deve ser calculado.
// Acho que poderia ser mais curto...
// Retorna 0,0 O ângulo deve ser ajustado e depois obtido.
// Então, conhecendo a diferença de preço e o número de barras entre Max e Min, o ângulo deve ser calculado
// Acho que poderia ser mais curto...
muito obrigado )
Ugh, não consigo descobrir como adicionar variáveis - ou seja, digamos que tenho 4 variáveis booleanas e preciso passar por elas?
Entendo o ponto - o restante deve ser menor ou maior que zero após a divisão - mas não consigo descobrir como fazer isso :(
Para os booleanos, a abordagem é ligeiramente diferente
Codificação binária.
Neste caso, o máximo N é inferior a 16.
Eu não consigo entender o que você quer obter
Para os booleanos, a abordagem é ligeiramente diferente
codificação binária.
O N máximo, neste caso, é inferior a 16
Eu não consigo entender o que você está tentando conseguir.
Você é um gênio! Obrigado!
Eu tenho 16 opções.
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=15; A=verdadeiro; B=verdadeiro; C=verdadeiro; D=verdadeiro
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=13; A=verdadeiro; B=falso; C=verdadeiro; D=verdadeiro
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=9; A=verdadeiro; B=falso; C=falso; D=verdadeiro
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=1; A=verdadeiro; B=falso; C=falso; D=falso
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=5; A=verdadeiro; B=falso; C=verdadeiro; D=falso
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=3; A=verdadeiro; B=verdadeiro; C=falso; D=falso
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=11; A=verdadeiro; B=verdadeiro; C=falso; D=verdadeiro
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=7; A=verdadeiro; B=verdadeiro; C=verdadeiro; D=falso
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=14; A=falso; B=verdadeiro; C=verdadeiro; D=verdadeiro
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=6; A=falso; B=verdadeiro; C=verdadeiro; D=falso
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=10; A=falso; B=verdadeiro; C=falso; D=verdadeiro
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=2; A=falso; B=verdadeiro; C=falso; D=falso
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=12; A=falso; B=falso; C=verdadeiro; D=verdadeiro
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=4; A=falso; B=falso; C=verdadeiro; D=falso
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=8; A=falso; B=falso; C=falso; D=verdadeiro
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=0; A=falso; B=falso; C=falso; D=falso
muito obrigado )
// Retorna 0,0 O ângulo deve ser ajustado e depois obtido.
// Então, conhecendo a diferença de preço e o número de barras entre Max e Min, o ângulo deve ser calculado
// Acho que poderia ser mais curto...
Acho que preciso olhar para o gráfico como um indicador, preciso de uma maneira diferente de olhar os indicadores, por favor me diga se o indicador está certo ou não.
Se às 4 da manhã - ainda não há muitos bares por hoje. No H4 há apenas 6 barras em um dia. você tem que definir o número de barras a serem procuradas ou o número de travessias.
Longas distâncias = tendência