Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 265

 
STARIJ:

Il grafico è nel browser o dove?

No, il grafico nel terminale

 
Vitaly Muzichenko: No, il grafico nel terminale
//+------------------------------------------------------------------+
//| Скрипт для вызова калькулятора и проч           -Калькулятор.mq4 |
//+------------------------------------------------------------------+
#property strict

#import "shell32.dll"                   // Все строки кончаются 0
   int ShellExecuteW(int hwnd,          // Хендл родительского окна
                     string Operation,  // Указатель на строку операции. Open, Print, Explore
                     string File,       // Указатель на строку с именем исполняемого файла
                     string Parameters, // Указатель на строку с параметрами
                     string Directory,  // Указатель на строку с именем папки
                     int ShowCmd);      // 0 = показать
#import

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
{
  // Запустить калькулятор
  ShellExecuteW(0, "Open", "Calc.exe", "", "", 0);

  // Открыть папку
  string terminal_data_path=TerminalInfoString(TERMINAL_DATA_PATH);
  ShellExecuteW(0,"explore", terminal_data_path+"\\MQL4", "", "", 1);

  // Открыть HTML-файл
  ShellExecuteW(0,"Open", terminal_data_path+"\\DetailedStatement.htm", "", "", 1);

  // Открыть Яндекс
  ShellExecuteW(0,"Open", "Yandex.ru", "", "", 1);
}
 
STARIJ:

A proposito, mi sono ricordato di chiamare i comandi esterni, puoi dirmi come dire al browser (e se è possibile):

"aprire la pagina http://bla-bla-bla, e se esiste già, mostrare solo la scheda corrispondente"

ShellExecuteW(0, "Open"....) è usato per aprire una nuova scheda ogni volta

 
Artyom Trishkin:

Compri sempre cetrioli della stessa qualità per 50 quando sono 10 uno accanto all'altro?


ogni tanto)

conosci la prima regola del trading - la tendenza è tua amica?

 
Taras Slobodyanik: conosci la prima regola del trading - la tendenza è tua amica?

La storia si ripete - Su - giù Su - giù. Quindi, su vendere, giù comprare

 
STARIJ:

Grazie, è andato tutto bene.

 
Taras Slobodyanik:

ogni tanto)

Conoscete la prima regola del trading: il trend è vostro amico?

Chi non lo fa, ma quando il magazzino dei cetrioli è pieno fino all'orlo (la fine del trend dei cetrioli) ed è il momento di vendere i cetrioli per fare spazio nel magazzino, non comprerò un'altra partita di cetrioli. Venderò prima un lotto o due, per non mettere scatole sul tetto del magazzino che marciranno o saranno rubate senza pietà o mangiate dai corvi.

E "sopra" per me è quando si può vedere il livello del tetto del magazzino, sotto si può vedere il livello del suo pavimento...

Quindi ci siamo...

 
Taras Slobodyanik:

ogni tanto)

Conoscete la prima regola del trading: il trend è vostro amico?


Questa regola si applica solo se sei un market maker o almeno un DC e sei consapevole della sua formazione e sviluppo. Dal punto di vista di un normale trader, il trend è l'animale più cattivo e infido che possa esistere su questo mercato.

Perché è determinato al 100% solo sul completamento ))))

Non hai bisogno di nemici con tali amici...
 
Taras Slobodyanik:

ogni tanto)

conosci la prima regola del trading - la tendenza è tua amica?

Non è la prima regola. Il primo è comprare basso, vendere alto.

E su o giù, tendenza o controtendenza non è una regola, ma una predilezione personale.

 

Artyom buon pomeriggio. Il mio nome è Daniel. La mia domanda è la seguente. Ho scritto il mio Expert Advisor in MQL4, per essere più preciso, l'ho riscritto dal video tutorial. Apparentemente ci sono alcuni errori, ma non compila bene.

//+------------------------------------------------------------------+

//| test7.mq4 |

//| Copyright 2017, MetaQuotes Software Corp.

//| https://www.mql5.com |

//+------------------------------------------------------------------+

#property copyright "Copyright 2017, MetaQuotes Software Corp."

#proprietà link "https://www.mql5.com"

#proprietà versione "1.00"

#proprietà rigorosa

//-------------------------------------------------------------------

extern double lots = 0,1;

extern int TakeProfit = 300;

extern int StopLoss = 50;

extern int Magic = 777;

extern inttern Slippage = 3;

//-------------------------------------------------------------------

extern string TMA = "Parametri dell'indicatore TMA";

extern string TimeFrame = "time frame corrente";

extern int HalfLength = 56;

extern int Price = "PRICE_CLOSE;

extern double ATRMultiplier = 2.0;

extern inttern ATRPeriod = 100;

extern bool Interpolate = true;

//-------------------------------------------------------------------

doppio PriceHigh, PriceLow, SL , TP;

int ticet;



//+------------------------------------------------------------------+

//| Funzione di inizializzazione dell'esperto |

//+------------------------------------------------------------------+

int OnInit()

{

se (Cifre == 3 || Cifre == 5);

{

TakeProfit *=10;

StopLoss *=10;

Scivolamento *=10;

}

return(INIT_SUCCEED);

}

//+------------------------------------------------------------------+

//| Funzione di deinizializzazione dell'esperto |

//+------------------------------------------------------------------+

void OnDeinit(const int reason)

{

}

//+------------------------------------------------------------------+

//| funzione tick esperto |

//+------------------------------------------------------------------+

void OnTick()

{

PriceHigh = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 1, 0);

PriceLow = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 2, 0);

if (CountSell() == 0 && Bid >= PriceHigh)

{

tiket = OrderSend(Symbol(), OP_SELL, lots, Bid, Slippage, 0, 0, "TMA robot", Magic, 0, Red);

se (tiket > 0)

{

SL = NormalizeDouble(Bid + StopLoss*Point, Digits);

TP = NormalizeDouble(Bid - TakeProfit*Point, Digits);

se (OrderSelect(tiket, SELECT_BY_TICKET))

OrderModify(tiket, OrderOpenPrice(), SL, TP, 0)

}

}

}

//--------------------------------------------------------------------------------------------

if (CountBuy() == 0 && Ask <= PriceLow)

{

tiket = OrderSend(Symbol(), OP_BUY, lots, Ask, Slippage, 0, 0, "TMA robot", Magic, 0, Blue);

se (tiket > 0)

{

TP = NormalizeDouble(Ask + TakeProfit*Point, Digits);

SL = NormalizeDouble(Ask - StopLoss*Point, Digits);

se (OrderSelect(tiket, SELECT_BY_TICKET))

OrderModify(tiket, OrderOpenPrice(), SL, TP, 0);

}

}

//+------------------------------------------------------------------+

int CountSell()

{

int count = 0;

per (int trade = OrdersTotal()-1; trade>=0; trade--)

{

se (OrderSelect(trade, SELECT_BY_POS, MODE_TRADES))

{

if (OrderSymbol() == Symbol() && OrderMagicNumber) == Magic && OrderType() == OP_SELL)

count++;

}

}

return(count);

}

//-----------------------------------------------------------------------------------------------

int CountBuy()

{

int count = 0;


per (int trade = OrdersTotal()-1; trade>=0; trade--)

{

se (OrderSelect(trade, SELECT_BY_POS, MODE_TRADES))

{

if (OrderSymbol() == Symbol() && OrderMagicNumber) == Magic && OrderType() == OP_BUY)

count++;

}

}

return(count);

}