Grazie mille, ho considerato questa opzione, ma a causa del mio analfabetismo come codificatore qualcosa è andato storto)), ma ora se mi permettete un'altra domanda. Tutto funziona, ma c'è un avviso: conversione implicita da 'string' a 'number', come rimuoverlo? È possibile?
Александр: Grazie mille, ho considerato questa opzione, ma a causa del mio analfabetismo come codificatore qualcosa è andato storto)), ma ora se mi permettete un'altra domanda. Tutto funziona, ma ricevo un avvertimento: conversione implicita da 'stringa' a 'numero', come me ne libero? È possibile?
Colleghi, aiutare con l'algoritmo e le funzioni matematiche, si può solo usare le funzioni matematiche, il compito è quello di chiudere una posizione di mercato da 5 porzioni.
Cioè, per esempio, una posizione di mercato di 10,24 lotti o 5,12 lotti dovrebbe essere coperta con circa parti uguali di 5 parti. Possiamo fare una di quelle rimanenti più grande delle altre per coprire il volume rimanente dopo che le prime quattro posizioni sono state chiuse.
Questo argomento dall'aiuto delle funzioni mate non è proprio adatto, secondo me, ha bisogno di qualcosa per completare.... Come contare in modo ottimale i lotti di ciascuna delle 5 azioni (parti) per chiudere una posizione comune.
Возвращает вещественный остаток от деления двух чисел.
double MathMod(
doublevalue, // делимое double value2 // делитель
);
Параметры
value
[in] Значение делимого.
value2
[in] Значение делителя.
Возвращаемое значение
Функция MathMod рассчитывает вещественный остаток f от val / y таким образом, что val = i * y + f , где i является целым числом, f имеет тот же знак, что и val, и абсолютное значение f меньше, чем абсолютное значение y.
Примечание
Вместо функции MathMod() можно использовать функцию fmod().
Colleghi, aiutare con l'algoritmo e le funzioni matematiche, si può solo usare le funzioni matematiche, il compito è quello di chiudere una posizione di mercato da 5 porzioni.
Cioè, per esempio, una posizione di mercato di 10,24 lotti o 5,12 lotti dovrebbe essere coperta con circa parti uguali di 5 parti. Possiamo fare una di quelle rimanenti più grande delle altre per coprire il volume rimanente dopo che le prime quattro posizioni sono state chiuse.
Questo argomento dall'aiuto delle funzioni mate non è del tutto adatto, secondo me, ha bisogno di qualcosa - qualcosa per completare .... COME contare in modo ottimale i lotti di ciascuna delle 5 parti (pezzi) per chiudere una posizione comune.
Una divisione per 5 è una divisione per 5 :-)
lots_1to4=NormalizeLots(lots/5);// лоты для 1,2,3,4 ; округление лота сами добавите
О! Spc. Esattamente - attraverso la differenza di arrotondamento e il totale di partenza!!! Arrotondamento attraverso lo stesso?
Возвращает ближайшее снизу целое числовое значение.
doubleMathFloor(
double val // число
);
Параметры
val
[in] Числовое значение.
Возвращаемое значение
Числовое значение, представляющее наибольшее целое число, которое меньше или равно val.
Примечание
Вместо функции MathFloor() можно использовать функцию floor().
---
Ma deve essere arrayato dalla stringa in OnInit()
Tutto funziona, ma c'è un avviso: conversione implicita da 'string' a 'number' , come rimuoverlo? È possibile?
Grazie mille, ho considerato questa opzione, ma a causa del mio analfabetismo come codificatore qualcosa è andato storto)), ma ora se mi permettete un'altra domanda.
Tutto funziona, ma ricevo un avvertimento: conversione implicita da 'stringa' a 'numero' , come me ne libero? È possibile?
Riposto il codice
Questo è il modo in cui è da queste parti... un buon codice dovrebbe essere sufficiente.
Pomeriggio
Cerco di creare 2 file per la copiatrice MT4-MT5:
Quando si cerca di leggere:Lo stesso codice in MT5 scrive tutto correttamente:
Sono io che ho qualche problema o qualcosa è andato in crash in MT4?
Colleghi, aiutare con l'algoritmo e le funzioni matematiche, si può solo usare le funzioni matematiche, il compito è quello di chiudere una posizione di mercato da 5 porzioni.
Cioè, per esempio, una posizione di mercato di 10,24 lotti o 5,12 lotti dovrebbe essere coperta con circa parti uguali di 5 parti. Possiamo fare una di quelle rimanenti più grande delle altre per coprire il volume rimanente dopo che le prime quattro posizioni sono state chiuse.
Questo argomento dall'aiuto delle funzioni mate non è proprio adatto, secondo me, ha bisogno di qualcosa per completare.... Come contare in modo ottimale i lotti di ciascuna delle 5 azioni (parti) per chiudere una posizione comune.
Colleghi, aiutare con l'algoritmo e le funzioni matematiche, si può solo usare le funzioni matematiche, il compito è quello di chiudere una posizione di mercato da 5 porzioni.
Cioè, per esempio, una posizione di mercato di 10,24 lotti o 5,12 lotti dovrebbe essere coperta con circa parti uguali di 5 parti. Possiamo fare una di quelle rimanenti più grande delle altre per coprire il volume rimanente dopo che le prime quattro posizioni sono state chiuse.
Questo argomento dall'aiuto delle funzioni mate non è del tutto adatto, secondo me, ha bisogno di qualcosa - qualcosa per completare .... COME contare in modo ottimale i lotti di ciascuna delle 5 parti (pezzi) per chiudere una posizione comune.
Una divisione per 5 è una divisione per 5 :-)
lots_1to4=NormalizeLots(lots/5); // лоты для 1,2,3,4 ; округление лота сами добавите
lots5 = NormalizeLots(lots - lots_1to4*5); // для 5 - оставшиеся лоты
una divisione per 5 è una divisione per 5 :-)
lots_1to4=NormalizeLots(lots/5); // лоты для 1,2,3,4 ; округление лота сами добавите
lots5 = NormalizeLots(lots - lots_1to4*5); // для 5 - оставшиеся лоты
О! Spc. Esattamente - attraverso la differenza di arrotondamento e il totale di partenza!!! Arrotondamento attraverso lo stesso?