[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 554

 
granit77:
Il terminale stesso non può farlo, ma ci sono degli script che possono farlo. Per esempio, questo. E ci sono diversi script simili nel database.


Sono molto rozzi, dove posso trovarne uno più semplice?
 
https://www.mql5.com/ru/code/10633 è potere!
 
Big_Bo:

Amici, per favore aiutatemi, ditemi come trovare il primo frattale del giorno sul grafico orario? E che all'inizio del giorno successivo si "resetta" e cerca un nuovo primo frattale?

Grazie in anticipo!


Aiuto:https://www.mql5.com/ru/forum/131859
 
abeiks:

Ho fatto qualcosa, ma per qualche motivo non funziona - un ordine che si aprepiù tardi non viene visualizzato . dov'è l'errore?

e se lo fosse?

double profits_buy_2pos()
{
    int ordercount = 0, OpenOrders = OrdersTotal();;
    double pr_buy = 0;
    for (int cnt = OpenOrders - 1; cnt >= 0; cnt--)   // scan all orders and positions. ..
    {
        if (!OrderSelect (cnt, SELECT_BY_POS)) return (0.0);
        if (OrderSymbol() != Symbol()) continue;
        if (OrderMagicNumber() != magic) continue;
        if (OrderType() != OP_BUY) continue;
        pr_buy += OrderProfit();
        ordercount++;
        if (ordercount == 2) break;
    } 
    Print ("::::::::::::::::::::::::: pr_buy2 = ", pr_buy);   
    Print ("::::::::::::::::::::::::: ordercount = ", ordercount);    
    return (pr_buy);   
}
 
Buon pomeriggio! Ho messo lo script sul grafico e non succede niente. Che cos'è?
 

Maggiori dettagli. Non ho ancora usato gli script. Il log dice 2012.11.30 13:05:56 Script Buy EURUSD,Weekly: caricato con successo e 2012.11.30 13:06:47 Script Buy EURUSD,Weekly: rimosso.

E nient'altro... Cosa vuole?

Cane!!! È il terzo giorno che non funziona...

 
Dimka-novitsek:

Maggiori dettagli. Non ho ancora usato gli script. Il log dice 2012.11.30 13:05:56 Script Buy EURUSD,Weekly: caricato con successo e 2012.11.30 13:06:47 Script Buy EURUSD,Weekly: rimosso.

E nient'altro... Cosa vuole?

Cane!!! È il terzo giorno che non funziona...


Dammi il codice. Darò un'occhiata. Pubblicherò quello giusto.

 
//+------------------------------------------------------------------+
//|                                                      Покупка.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
//----
for(int i=0;i<=OrdersTotal();i++){
   if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == true)
 { if(OrderSymbol() != Symbol()) continue; 
   if(OrderType()==OP_SELL) 
  OrderClose(OrderTicket(),OrderLots(),Ask,6,Red); 
   if(OrderType()==OP_BUY)
  OrderClose(OrderTicket(),OrderLots(),Bid,6,Red);  
   if(OrderType()>=2)
  OrderDelete(OrderTicket());  }} 
//----
   for(i=0;i<23;i++){
   Sleep(2000);RefreshRates(); if(!IsTradeAllowed())continue;
   int tiket=OrderSend(Symbol(),OP_BUY,0.1,Ask,6,0,0,"Skript",98600,0,Blue);
   if( tiket!=-1)break;}
     
          
//----
   return(0);
  }
//+------------------------------------------------------------------+
Certo, subito! Il codice sembra a posto... Non so cosa... Ma certo che lo metterò in giro!
 
Dimka-novitsek:
Certo, subito! Il codice sembra a posto... Non so cosa... Ma certo che lo metterò in giro!

Forse questo funzionerà:

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
#include     <stderror.mqh>                        // Библиотека кодов ошибок
int start()
{
    double ld_Price;
//----
    for (int i = OrdersTotal() - 1; i >= 0; i--)
    {
        if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
        if (OrderSymbol() != Symbol()) continue; 
        if (OrderType() >= 2)
        {OrderDelete (OrderTicket());  continue;}
        if (OrderType() == OP_SELL) ld_Price = Ask;
        else if (OrderType() == OP_BUY) ld_Price = Bid;
        OrderClose (OrderTicket(), OrderLots(), NormalizeDouble (ld_Price, Digits), 6, Red);
    }
//----
    for (i = 0; i < 23; i++)
    {
        Sleep (2000);
        if (!IsTradeAllowed()) continue;
        RefreshRates();
        if (OrderSend (Symbol(), OP_BUY, 0.1, NormalizeDouble (Ask, Digits), 6, 0.0, 0.0, "Skript", 98600, 0, Blue) > 0) break;
        else Print ("Error: ", ErrorDescription (GetLastError()));
    }
//----
    return (0);
}
//+------------------------------------------------------------------+
 
Farò un tentativo! Grazie!