[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non potrei andare da nessuna parte senza di te - 2. - pagina 137

 

Naturalmente, posso controllare io stesso, ma forse qualcuno mi darà una risposta veloce.

Se ho un array m[] con il numero attuale di elementi già generato, diciamo 10,

e poi dico

ArrayResize(m, 15)

i 10 elementi originali dell'array manterranno i loro valori?

--------------------------------------------------------------------------

Tutti controllati - i valori vengono mantenuti.


 
more:

Naturalmente, posso controllare io stesso, ma forse qualcuno mi darà una risposta veloce.

Se ho un array m[] con un numero attuale di elementi già formati, diciamo 10,

e poi dire

ArrayResize(m, 15)

i 10 elementi originali dell'array manterranno i loro valori?

--------------------------------------------------------------------------

Tutti controllati - i valori vengono mantenuti.


Perché ne specificate 15? Ve ne servono 10.
 
Ci sono alcune domande tecniche su MT.

1. esportazione di dati. Tutto è chiaro con il DDE e il salvataggio dell'archivio delle citazioni. Sono interessato a scaricare certe citazioni di un certo intervallo su un certo periodo usando il linguaggio incorporato. Ho capito che è fatto con l'aiuto di script. Su questo sito ho trovato esempi di script per scaricare i dati.

Domanda: perché lo script venga eseguito automaticamente (in questo caso, lo scarico), devo creare un Expert Advisor che esegua questo script?

2. Il codice degli script ecc. sembra essere memorizzato in *.mq4, mentre *.ex4 è probabilmente un file compilato. Vorrei la seguente possibilità: se necessario cambiare il codice dello script con qualsiasi editor di testo - e per MT eseguire lo script già cambiato. Se l'ipotesi su *.mq4 e *.ex4 è corretta, è possibile eseguire la compilazione usando metodi non di interfaccia e passare lo script modificato a MT per l'esecuzione?

Sono interessato all'importazione/esportazione di transazioni attraverso un file e una libreria - esiste una tale possibilità (simile alla funzionalità in QUIK)? Non ho trovato alcuna chiara indicazione di questa possibilità. È possibile organizzare lo scambio attraverso un file di formato proprio: l'Expert Advisor legge e analizza il file e, a seconda del suo contenuto, esegue le transazioni? Se è possibile, ci sono esempi?


4. E c'è un aiutante di sintassi per il linguaggio MetaQuote?


Grazie in anticipo per il vostro aiuto!
 
Mopo3:
Ci sono alcune domande tecniche su MT.

1. esportazione di dati. Tutto è chiaro con il DDE e il salvataggio dell'archivio delle citazioni. Sono interessato a scaricare certe citazioni di un certo intervallo su un certo periodo usando il linguaggio incorporato. Ho capito che è fatto con l'aiuto di script. Su questo sito ho trovato esempi di script per scaricare i dati.

Domanda: se voglio che lo script venga eseguito automaticamente (in questo caso, lo scarico), devo creare un Expert Advisor che esegua questo script?

2. Il codice degli script ecc. sembra essere memorizzato in *.mq4, mentre *.ex4 è probabilmente un file compilato. Vorrei la seguente possibilità: se necessario cambiare il codice dello script con qualsiasi editor di testo - e per MT eseguire lo script già cambiato. Se l'ipotesi su *.mq4 e *.ex4 è corretta, è possibile eseguire la compilazione usando metodi non di interfaccia e passare lo script modificato a MT per l'esecuzione?

Sono interessato all'importazione/esportazione di transazioni attraverso un file e una libreria, è possibile (simile alla funzionalità di QUIK)? Non ho trovato nessuna chiara indicazione di questa possibilità. È possibile organizzare lo scambio attraverso un file di formato proprio: l'Expert Advisor legge e analizza il file e, a seconda del suo contenuto, esegue le transazioni? Se è possibile, ci sono esempi?

4. E c'è un aiutante di sintassi per il linguaggio MetaQuote?

Grazie in anticipo per il vostro aiuto!

1. Puoi farlo da qualsiasi punto (script, Expert Advisor, indicatore).

2. Si può fare, ma perché? Tutto può essere implementato direttamente nel codice MQL4.

Sì, è possibile. Ci sono molti esempi nella raccolta di file, e non solo attraverso un file.

4. F1. https://docs.mql4.com/ru/

 
Anche il pulsante F1 negli editor)
 
alsu:
E anche il tasto F1 negli editor)
Questo è quello che volevo dire :-))
 
Zhunko:
Questo è quello che volevo dire :-))

È dura il lunedì.

 
Zhunko:

1. Puoi farlo da qualsiasi punto (script, esperto, indicatore).

2. Si può fare, ma perché? Tutto può essere implementato direttamente nel codice MQL4.

Sì, è possibile. Ci sono molti esempi nella raccolta di codice, e non solo attraverso un file.

4. F1. https://docs.mql4.com/ru/


1. Capisco, studierò la lingua.

2. Un esempio semplice: un MTS di terzi in cui si selezionano strumenti, TF, ecc. Richiederà anche le citazioni da MT, cioè in questo caso cambierà il codice dello script di caricamento dei dati (non ho ancora trovato nessuna libreria esterna da collegare in un'applicazione di gestione MT di terze parti). MT dovrà compilare il codice modificato e impostarlo per l'esecuzione.

Deduco che la questione della compilazione e dell'esecuzione automatica sia quella di guardare https://docs.mql4.com/ru/?

3. Non devo aver cercato abbastanza. Mi è sembrato che tutti gli esempi illustrino esattamente il processo decisionale sul lato MT basato sull'analisi dei dati.

4. Grazie mille per https://docs.mql4.com/ru/. Ma F1 difficilmente può essere chiamato un aiutante di sintassi :)

 

Purtroppo, l'autore di questo quando si è ritirato dal business, quindi vi chiedo un pro - ho dopo un affare in perdita si apre, solo un affare lotto *2 - e poi i miei ordini sono a volte annullati - dopo il tempo - sono tutti in sospeso e spesso non viene ad aprire offerte lotto *2 Penso che questo è perché dopo abbiamo aperto questo affare, manteniamo il saldo dopo workbalance_before= balance_after; e la funzione è già il prossimo affare, è il solito, suggerire - cosa bisogno di cambiare o risolvere - che cosa sarebbe

Aiutatemi a cambiare o correggere - cosa dovrei cambiare o correggere - aprire il lotto *2 finché l'ordine funziona, o aprire finché la perdita è bloccata, grazie in anticipo per la risposta!


Come parametri, passa il volume iniziale (doppio lotto), e il passo (doppio x).
Inserisci il metodo direttamente in OrderSend invece del parametro volume.

Пример вызова функции://+------------------------------------------------------------------+

double getMartinLot(double lot, double x){         //ФУНКЦИЯ УПРАВЛЕНИЯ ОБъЕМОМ ТОРГОВ ПО СИСТЕМЕ МАРТИНГЕЙЛА
   static double balance_before, balance_after;    //ДЛЯ ХРАНЕНИЯ СОСТОЯНИЯ БАЛАНСА ДО И ПОСЛЕ СДЕЛОК
   static double save_Lot;
   balance_after = AccountBalance();               //СОХРАНЕНИЕ ТЕКУЩЕГО СОСТОЯНИЯ БАЛАНСА
   if(balance_after >= balance_before){            //ПРОВЕРКА ИЗМЕНЕНИЯ БАЛАНСА
      save_Lot = lot;                              //ЕСЛИ ОН НЕ ИЗМЕНИЛСЯ ИЛИ СТАЛ БОЛЬШЕ, ТО СБРАСЫВАЕМ ЛОТ ДО БАЗОВОГО
   }else{
      save_Lot *= x;                               //ЕСЛИ СТАЛ МЕНЬШЕ ТО УВЕЛИЧИВАЕМ ЛОТ НА Х РАЗ
   }
   balance_before = balance_after;                 //СОХРАНЯЕМ СОСТОЯНИЕ БАЛАНСА ПОСЛЕ РАБОТЫ
   return(save_Lot);
}
//+------------------------------------------------------------------+

Passa il volume iniziale (doppio lotto) e il passo (doppio x) come parametri.
Inserisci il metodo direttamente in OrderSend invece del parametro volume.

Esempio di chiamata di funzione:

if(OrdersTotal() == 0){
   OrderSend(Symbol(), OP_BUY, getMartinLot(0.1, 2), Ask, 10, Bid-25*Point, Bid+25*Point);
}

 
Mopo3:


1. Capisco, studierò la lingua.

2. Un esempio semplice: un MTS di terzi in cui si selezionano strumenti, TF, ecc. Richiederà anche le citazioni da MT, cioè in questo caso cambierà il codice dello script di caricamento dei dati (non ho ancora trovato nessuna libreria esterna da collegare nell'applicazione di gestione MT di terze parti). MT dovrà compilare il codice modificato e impostarlo per l'esecuzione.

Deduco che la questione della compilazione e dell'esecuzione automatica sia quella di guardare https://docs.mql4.com/ru/?

3. Non devo aver cercato abbastanza. Mi è sembrato che tutti gli esempi illustrino esattamente il processo decisionale sul lato MT basato sull'analisi dei dati.

4. Grazie mille per https://docs.mql4.com/ru/. Ma F1 difficilmente può essere chiamato un aiutante di sintassi :)

2. Non capisco perché si debba compilare qualcosa al volo. Fate una serie di script già pronti ed eseguiteli, se non sapete come gestire i parametri degli script dall'esterno.

Sono in grado di gestire MT4 dall'applicazione console. Uso la libreria di classi sulla base della quale è costruita questa libreria.

4. Se qualcosa non è chiaro nel codice, mettete il cursore su ciò che non è chiaro e premete F1. Questo è un aiutante di sintassi.

Motivazione: