Pozostałe funkcje wspólne

Pozostałe funkcje , które są dostępne w MQL4 lecz nie są ściśle powiązane z konkretną grupą funkcji:

Alert

Wyświetla okno dialogowe z danymi zdefiniowanym przez użytkownika. Wartości wyświetlane, przekazywane jako parametry funkcji mogą być dowolnego typu z wyjątkiem tablic, które mogą być przekazywane, tylko jako pojedyncze wartości określone indeksem tablicy. W celu bardziej czytelnego prezentowania danych zaleca się wykorzystanie funkcji konwertujących i formatujących. Do sformatowania zmiennych typu double można wykorzystać funkcję DoubleToStr(). Dane typu bool, datetime i kolor będą automatycznie konwertowane do wartości numerycznej i prezentowane jako wartość tekstowa, łańcuchowa. Do sformatowania wartości typu datetime możemy wykorzystać funkcję TimeToStr(). Liczba przekazywanych do funkcji pojedynczych zmiennych, ciągów znaków, oddzielonych przecinkami nie może być większa niż 64 parametry.

Składnia:

void Alert(param1,param2,param3,…)
Parametry
param1, param2, param3..., – parametry wyświetlane jako tekst
Wartość zwracana
brak

Przykłady:

if (Close[0] > SignalLevel)
alert( "Cena zamknięcia większa od SignalLevel",Close[0],"!!!");

Comment

Wyświetla komentarz tekstowy w lewym górnym rogu wykresu. Wartości wyświetlane, przekazywane jako parametry funkcji mogą być dowolnego typu z wyjątkiem tablic, które mogą być przekazywane, ale tylko jako pojedyncze wartości określone indeksem tablicy.

W celu bardzie czytelnego prezentowania danych zaleca się wykorzystanie funkcji konwertujących i formatujących. Do sformatowania zmiennych typu double można wykorzystać funkcję DoubleToStr(). Dane typu bool, datetime i kolor będą automatycznie konwertowane do wartości numerycznej i prezentowane jako wartość tekstowa, łańcuchowa. Do sformatowania wartości typu datetime możemy wykorzystać funkcję TimeToStr(). Liczba przekazywanych do funkcji pojedynczych zmiennych, ciągów znaków, oddzielonych przecinkami nie może być większa niż 64 parametry.

Składnia:

void Comment(param1,param2,param3,…)
Parametry
param1, param2, param3..., – parametry wyświetlane jako tekst
Wartość zwracana
brak

Przykład:

double free_margin = AccountFreeMargin();
Comment( "Dostępny margines zabezpieczający ",DoubleToStr(free_margin, 2),
"\n","Aktualny czas ",TimeToStr(TimeCurrent()))

GetTickCount

Funkcja zwraca liczbę milisekund, które upłynęły od czasu uruchomienia zegara systemowego i jest ograniczona do zakresu zegara systemu operacyjnego.

Składnia:

int GetTickCount()

Parametry
Brak

Wartość zwracana
Czas w milisekundach

 

Przykład:

int start = GetTickCount(); // pobiera aktualny czas
…// dowolny kod
Print("Czas wykonania kodu aplikacji ",GetTickCount()-start,"ms.");

MarketInfo

Funkcja zwraca informacje na temat danego instrumentu, którego pierwszym parametrem jest symbol instrumentu. Drugi parametr to predefiniowana zmienna określająca jakie informacje będą zwracane przez funkcję (zobacz opis w punkcie stałe identyfikatory funkcji MarketInfo).

Składnia:

double MarketInfo( string symbol, int type)
Parametry
symbol – nazwa symbolu
type - identyfikator zmiennej określającej informacje, które będą zwracane
Wartość zwracana
Wartość zależna od identyfikatora type

Przykład:

double bid = MarketInfo(EURUSD, MODE_BID);
double ask = MarketInfo(EURUSD, MODE_ASK);
double point = MarketInfo(EURUSD, MODE_POINT);
int digits = MarketInfo(EURUSD, MODE_DIGITS);
int spread = MarketInfo(EURUSD, MODE_SPREAD);

MessageBox

Funkcji MessageBox wyświetla okienko z komunikatem tekstowym. Okno komunikatu może zawierać określone przez użytkownika ikony oraz przyciski. Funkcja zwraca określone predefiniowaną wartość kodu powrotu zależnego od tego jaki przycisk został wybrany. Funkcja nie jest typową funkcją języka MQL, tylko funkcją WinAPI wywoływaną z poziomu kodu MQL jako funkcja importowa, dlatego konieczne jest wskazanie biblioteki zewnętrznej określonej w pliku nagłówkowym WinUser32.mqh.

Składnia:

int MessageBox( string text=NULL, string caption=NULL, int flags=EMPTY)
Parametry
text – wartość tekstowa wyświetlana w okienku
caption – nazwa w nagłówku okienka dialogowego
flag – parametr określający parametry okienka ikony oraz przyciski
Wartość zwracana
Kod identyfikujący przycisk który został wybrany w okienku

Przykład:

#include <WinUser32.mqh>
if(ObjectCreate( "text_object" OBJ_TEXT, 0, D 2004 .02.20 12:30, 1,0045) ==
false)
{
int ret = MessageBox("ObjectCreate() funkcja zwróciła " + GetLastError() +
"błąd \nKontynuować?", "Pytanie" MB_YESNO | MB_ICONQUESTION)
if (ret == IDNO) return (false);) // kontynuu

PlaySound

Funkcja odtwarza plik dźwiękowy. Plik musi znajdować się w katalogu terminal_dir\sounds lub w jego podkatalogach.

Składnia:

void PlaySound( string filename )
Parametry
filename – scieżka do pliku dźwiękowego
Wartość zwracana
brak

Przykład:

if(IsDemo()) PlaySound( "alert.wav")

Print

Wyświetla komentarz tekstowy w dzienniku logów. Wartości wyświetlane, przekazywane jako parametry funkcji mogą być dowolnego typu z wyjątkiem tablic, które mogą być przekazywane, ale tylko jako pojedyncze wartości określone indeksem tablicy.
W celu bardzie czytelnego prezentowania danych zaleca się wykorzystanie funkcji konwertujących i formatujących. Do sformatowania zmiennych typu double można wykorzystać funkcję DoubleToStr(). Dane typu bool, datetime i kolor będą automatycznie konwertowane na wartości numerycznej i prezentowane jako wartość tekstowa, łańcuchowa. Do sformatowania wartości typu datetime możemy wykorzystać funkcję TimeToStr(). Liczba przekazywanych do funkcji pojedynczych zmiennych, ciągów znaków, oddzielonych przecinkami nie może być większa niż 64 parametry.

Składnia:

boid Print(param1,param2,param3,…)
Parametry
Wartość zwracana
brak

Przykład:

// wyświetla wartość dostępnego kapitału zabezpieczającego
double free_margin = AccountFreeMargin();
Print( "Dostępny margines zabezpieczający ",DoubleToStr(free_margin, 2),
"\n","Aktualny czas ",TimeToStr(TimeCurrent()));
// wyświetla wartość liczby pi
double pi = 3.141592653589793;
Print("Liczba PI ",DoubleToStr(pi, 8))
// wyświetla zmienne z tablicy ceny zamknięcia
for (int i = 0; i <10; i + +)
Print(Close[i]

SendFTP

Funkcja wysyła plik na serwerze FTP określony w konfiguracji aplikacji terminala Narzędzia -> Opcje -> Publikacje. Jeśli próba się nie powiedzie, to funkcja zwraca wartość FALSE. Funkcja nie działa w trybie testowania strategii. Pliki do wysłania muszą być przechowywane w terminal_directory\experts\files lub jego podkatalogów. Funkcja zwróci błąd, jeśli nie ma a dresu FTP i/lub hasła dostępu określonych w konfiguracji terminala.

Składnia:

bool SendFTP( string filename, string ftp_path=NULL)
Parametry
filename – nazwa pliku do umieszczenia na serwerze FTP
ftp_path –opcjonalna ścieżka do serwera FTP
Wartość zwracana
true – jeśli prawidłowo wysłane na serwer FTP
fasle – jeśli nie prawidłowo wysłane na serwer FTP

Przykład:

int lasterror = 0;
if( !SendFTP ("raport.txt"));
lasterror = GetLastError()

SendMail

Wysyła wiadomość e-mail z wykorzystaniem parametrów konta użytkownika określonych w parametrach terminala Narzędzia -> Opcje -> email. Aby uzyskać szczegółowe informacje o błędach wysyłania email, należy użyć funkcji GetLastError().

Składnia:

void SendMail( string subject, string some_text)
Parametry
subject – temat email
some_text - treści wiadomości
Wartość zwracana
brak

Przykład:

double cena_zamkniecia = Close[0];
if (cena_zamkniecia < my_signal)
sendmail( "Wysłane przez EA", "Cena niższa od wartości sygnału " +
DoubleToStr(cena_zamkniecia, 4))

Sleep

Funkcja wstrzymuje wykonanie bieżącego programu na określony czas.

Składnia:

void Sleep( int milisekundy )
Parametry
milisekundy – czas wstrzymania programu podany w milisekundach
Wartość zwracana
brak

Przykład:

… / dowolny kod
Sleep(10000); // Czekać 10 sekund
… / dowolny kod

Niniejszy materiał, przygotowany przez DM BOŚ S.A. ma charakter wyłącznie informacyjny, prezentowany jest w celach edukacyjnych i nie stanowi porady prawnej oraz nie jest rekomendacją osobistą w ramach świadczenia usługi doradztwa inwestycyjnego zgodnie z przepisami prawa. DM BOŚ S.A. nie udziela gwarancji dokładności, aktualności, oraz kompletności niniejszych informacji. Zaleca się przeprowadzenie we własnym zakresie niezależnego przeglądu informacji z niniejszego materiału.

1/1