Creiamo un MagicNumber automatico e unico per ogni strategia del nostro portafoglio!
7 risposte
Karish
6 anni fa #195927
Quindi..,
Come tutti già sapete, quando si ha un portafoglio SQ3 non dà la possibilità di creare una sorta di file con tutte le regole delle strategie che sono all'interno del portafoglio in modo che MT4 possa leggere da quel file e non abbiamo bisogno di avere 100 finestre aperte all'interno di MT4 con gli EA.
Quindi... fino a quando SQ4 non sarà pronto con una qualche funzione del genere,
possiamo migliorare la nostra vita eliminando una parte del lavoro manuale mentre siamo pronti a negoziare il nostro portafoglio,
Questo argomento si concentrerà su come rendere il nostro lavoro più efficiente, meno manuale e più automatico,
Vorrei avere un aiuto da voi ragazzi che avete qualche conoscenza di codifica,
Credo che la prima cosa da fare sia un numero magico univoco automatico,
Non sono un esperto e vorrei ricevere un aiuto per la costruzione di questo sistema,
la mia idea è quella di ottenere il nome del file EA che è ad esempio: "Strategia 4.222".
togliere la stringa "Strategia" + la stringa "." in modo da avere solo un intero di "4222",
Ecco :), non so proprio come fare e mi piacerebbe avere un aiuto e condividerlo pubblicamente con i membri :),
In seguito potremo continuare a migliorare e tagliare parti del nostro flusso di lavoro "esportazione e commercio del portafoglio".
grazie per la vostra partecipazione e il vostro aiuto 🙂
Karish
6 anni fa #195978
NVM ha già risolto il problema grazie a @notch,
la mia parte a voi ragazzi:
string Numerics_only(string numstring){int iPos=0;while(iPos < StringLen(numstring)){string c = StringSubstr(numstring, iPos, 1);if(c "9") StringReplace(numstring, c, "");else ++iPos;}return Numerics_only;}
stringa EAName=Nome esperto della finestra();
int MagicNumber = Numerics_only(EAName);
string CustomComment = EAName+"_"+MagicNumber;
Karish
6 anni fa #196026
Merda... non si può editare nel nuovo design del forum..., cavolo avrebbero dovuto mantenere l'opzione di usare il vecchio forum, c'erano così tante opzioni semplici lì...
Ecco il codice completo, dimenticatevi di cambiare ancora i MagicNumbers!:
stringa Numerics_only(stringa stringtonum){
int iPos=0;
while(iPos < StringLen(stringtonum)){
stringa c = StringSubstr(stringtonum, iPos, 1);
if(c "9") StringReplace(stringtonum, c, "");
altrimenti ++iPos;
}
restituire stringtonum;
}
stringa EAName=Nome esperto della finestra();
int MagicNumber = Numerics_only(EAName);
*** Sostituire il vecchio parametro "MagicNumber" che già esiste con questa funzione.
DIVERTIRSI!
cullo6
6 anni fa #197223
Ciao Karish, dove devo sostituire il vecchio parametro magicnumber con questo nuovo? In quale file?
Karish
6 anni fa #197231
Ciao Karish, dove devo sostituire il vecchio parametro magicnumber con questo nuovo? In quale file?
trovare "extern int MagicNumber=" e sostituirlo,
tutti i file relativi al codice si trovano nella cartella "Code".
cullo6
6 anni fa #197242
L'ho fatto, ma pensavo di aver sbagliato. Comunque grazie.
cullo6
6 anni fa #197455
Ciao Karish, dove devo sostituire il vecchio parametro magicnumber con questo nuovo? In quale file?
trovare "extern int MagicNumber=" e sostituirlo,
Tutti i file relativi al codice si trovano nella cartella "Code".
Ciao Karish, a me non funziona. Per prima cosa non compila, a causa di queste virgolette " in: if(c "9") StringReplace(stringtonum, c, "");, quindi le ho sostituite tutte con queste ". Ma non funziona, le strategie aprono ordini con il numero magico. 0. Potete aiutarmi? Ho provato anche altre modifiche a questa linea di codice, ma senza successo. Grazie.
Karish
6 anni fa #197459
stringa Numerics_only(stringa stringtonum){
int iPos=0;
while(iPos < StringLen(stringtonum)){
stringa c = StringSubstr(stringtonum, iPos, 1);
if(c "9") StringReplace(stringtonum, c, "");
altrimenti ++iPos;
}
restituire stringtonum;
}
stringa EAName=Nome esperto della finestra();
int MagicNumber = Numerics_only(EAName);
string CustomComment = EAName+"_"+MagicNumber;
provare questo, che funziona bene per me.
Stai visualizzando 7 risposte - da 1 a 7 (di 7 totali)