[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 437

 
Boa gente )) Ajude a encontrar uma EA que abra negócios de um nível (pontuada manualmente) em diferentes direções ao mesmo tempo. A parada deve ser ajustável, o lucro de preferência também. O nível é perfeitamente definido por um relógio de pulso diário. Se houver tal indicador que abra negócios da onda em duas direções, posso ter seu nome. Agradeço antecipadamente.
Gostaria de complementar minha pergunta com um exemplo. Suponhamos que determinemos o nível de 1,5700. Vendemos a partir de 1,5700 e compramos. Nossas paradas são 1.5730 e 1.5670, respectivamente. Por exemplo, fixamos uma parada em 1,5730, depois colocamos uma ordem de venda a partir de 1,5700 novamente com uma parada em 1,5730.
 
iliaalyoshin >>:

Всем привет!!! Я недавно начал изучать MQL4, да и вообще это мой первый опыт в программировании. Читаю учебник, копаюсь на форумах - что-то понятно, а что-то нет. Вот даже уже начал писать своего первого советика и попал в тупик. В учебнике ответа не нашел, на форуме просидел часа 4 - все безрезультатно.
Ребята, подскажите, пожалуйста! Например, есть некая цена PRICE. Как программе проверить, есть ли в наличии в данный момент открытые рыночные или отложенные ордера с этой ценой открытия? И, соответственно, если по этой цене ничего нет, то тогда нужно или выставить отложенный ордер или сразу открыть позицию.

Надеюсь на помощь!

Заранее, Спасибо!!!


Você precisa percorrer os warrants disponíveis e comparar cada preço.

//+-------------------Выбор ордера---------------------------+
int SelectOrder(string Sym,int Tip,int MAGIC,double minPrc,double maxPrc){
    int TotOrd=OrdersTotal();
    int OrdTick=-1;
    for(int OrdPos= TotOrd-1; OrdPos>=0; OrdPos--){
        if(OrderSelect( OrdPos, SELECT_BY_POS, MODE_TRADES)==true){
           if(OrderSymbol()== Sym){                                           //Есть ли ордера с нужным символом
              if(OrderType()== Tip){                                          //Если ли нужный тип ордера  
                 if( MAGIC==0){ MAGIC=OrderMagicNumber();}                     //Если магик = 0,неучитывать
                 if(OrderMagicNumber() == MAGIC){                            //Есть ли ордера с нужным Магик номером
                    if((OrderOpenPrice()> minPrc)&&OrderOpenPrice()< maxPrc)){ //Если ордер входит в заданный ценовой диапазон
                       OrdTick = OrderTicket(); break;                       //Запишем в переменную его тикет и прервем цикл 
    }}}}}}
    return( OrdTick);                                                         //Возвращает тикет найденного ордера или -1
}
algo como isto
 

Boa tarde, senhores. Por favor, verifique o código de expatriação. Não dá nenhum erro durante a compilação, mas não fecha as posições e não ilumina. Mas tudo está bem com a abertura. Entendo que há muita bobagem no código, mas são sobras de versões anteriores e podem ser salvas para o futuro.

Obrigado!

Arquivos anexados:
 
exolon >>:

Доброе время суток, господа. Не могли бы вы проверить код экспа. Ошибок при компиляции не выдает, но и позиции не закрывает и не тралит. А вот с открытием все в норме. Понимаю, что в коде много мусора, но это остатки от прошлых версий и задел на будущее..

Благодарю!


tentar imprimir as condições de saída. Imprimir variáveis Sell1, Buy1, Sellcl0,Buycl0. Se eles forem falsos no momento certo, então procure por erros na lógica da EA. E a propósito, não verifique o valor da variável booleana como se (Sell===1). Melhor se(Vender===verdadeiro) ou apenas se(Vender).

 
Eu tentei de ambas as maneiras. Eu coloco alerta ao invés de imprimir - parece que as condições de saída simplesmente não chegam lá. Não vê nem mesmo os sinais de saída em si. Tudo estava bem antes da instalação das funções do KIMa.
 
significa que você tem que estabelecer onde ela chega. Mova as impressoras para o início da função até obter uma resposta, então ficará claro onde a condição é contornada. Bem, se for mais rápido, coloque Print(n), n=1,2,3... após cada linha. Você saberá como funciona o programa.
 
Você pode me dizer como fazer uma mudança de período em um gráfico mudar os períodos nos outros gráficos pelo mesmo período?
 
Graff >>:
Подскажите как сделать чтоб при изменении периода на одном графике менялись периоды на остальных графиках на аналогичный период?

Não há nada mais fácil. Basta escrever um programa (não em MQL4) que pegue todas as janelas pertencentes ao MetaTrader no sistema, acompanhar quais instrumentos estão abertos nelas e, após uma mudança de ferramenta em uma delas, alterar os períodos nas outras e enviar-lhes as mensagens apropriadas do sistema para atualizar os dados.

 
Por favor, ajude. Aparentemente, não consigo entender. Eu mesmo escrevi o Expert Advisor, ele até negociou na vida real (a rentabilidade está em 0, mas para mim já é uma vitória). Encontrei-o no fórum e instalei um par de indicadores. Depois disso, o perito negocia somente no testador e exibe "razão não-init 3, razão não-init 6" e não abre negócios. A essência do perito é que ele obtém dados de dois indicadores (Stochastic e MAKD) em períodos diferentes (M15 e M60). Ficarei feliz por qualquer ajuda....
 
oyshen >>:
Прошу помочь. Видно я просто не могу понять. Эксперта я написал сам, он даже торговал в реале( прибыльность на уровне 0 но для меня это уже победа). Я нашел на форуме и установил пару индикаторов. После этого эксперт торгует только в тестере, а в реале выбивает " uninit reason 3, uninit reason 6" и не открывает сделки . Суть эксперта что он берет данные с двух индикаторв (Стохастик и МАКД) на разных периодах(М15 и М60). Буду рад любой помощи....

Há um ano comecei eu mesmo com estas perguntas. Escrevi meus próprios EAs e verifiquei os dos outros.

Você tem que entender que nenhuma EA lhe dará dinheiro até que você aprenda a negociar à mão!

Desculpe sobre a verdade.