Спасибо, а не подскажете, где там ответ на мой вопрос?
struct trade_settings
{
double take; // значения цены фиксации прибылиdouble stop; // значение цены защитного стопаuchar slippage; // значение допустимого проскальзывания
};
//--- создали и проинициализировали переменную типа trade_settings
trade_settings my_set={0.0,0.0,5};
if (input_TP>0) my_set.take=input_TP;
В чем проблема, там есть примеры присваивания и получение значение из структур.
struct test
{
int num;
double dval;
string sval;
};
test Test;
//...string field=DoubleToString(Test.dval);
Вам всего навсего нужно еще преобразовать double в string. DoubleToString
Сериализация и десериализация JSON-протокола. Портированный код со скоростной библиотеки С++. Практичный пример: авторизация на сайте и парсинг ответа Благодарности принимаются в виде примеров, кто как применяет MQL для работы с веб-ресурсами. Поделитесь своим опытом работы с JSON в MQL. В протокол добавлены функции Escape / Unescape...
//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
double d_value =0.0;
int i_value =0;
Print("d_value: type=",GetTypeName(d_value));
Print("i_value: type=",GetTypeName(i_value));
}
//+------------------------------------------------------------------+//| Возвращает в строковом виде тип |//+------------------------------------------------------------------+template<typename T>
string GetTypeName(const T &t)
{
return(typename(T));
}
То-есть прежде чем читать значение переменной получаем её тип и затем читаем значение в переменную соответствующего типа.
Эта кроссплатформенная библиотека позволяет удобно осуществлять побайтовую работу со структурами, массивами и стандартными типами данных. Возможности Побайтовое сравнение (== и !=) между собой структур, массивов и стандартных типов данных (в MQL по умолчанию отсутствуют операторы сравнения структур) в любом сочетании. Определение байтового...
Функция вычисляет торговые критерии. Функция возвращает следующие значения:
10 - сработал торговый критерий для открытия рыночного ордера Buy; 20 - сработал торговый критерий для открытия рыночного ордера Sell; 11 - сработал торговый критерий для закрытия рыночного ордера Buy; 21 - сработал торговый критерий для закрытия рыночного ордера Sell;
почему так зациклена программа на возвращаемых значениях для чего так сделано?
Цикл - многократный повтор. Здесь же разветвление. После срабатывания первого условия выполняется оператор return и выполнение программы прекращается. Если если условие окажется ложным, проверяется второе условие и так далее... Если все 4 условия будут ложными - будет выполняться далее
Как можно получить значение поля переменной типа структура, зная порядковый номер поля в этой структуре.
Я знаю, что в поле #1 (то есть double) изменилось значение. Как мне по порядковому номеру найти это поле?
Или подскажите, как можно получить поле структуры, зная его стринговое имя?
вот у меня есть значение
string field="dval";
Я хочу запросить именно это поле структуры.
Или подскажите, как можно получить поле структуры, зная его стринговое имя?
вот у меня есть значение
string field="dval";
Я хочу запросить именно это поле структуры.
Структуры и, классы и интерфейсы
Структуры и, классы и интерфейсы
Спасибо, а не подскажете, где там ответ на мой вопрос?
Спасибо, а не подскажете, где там ответ на мой вопрос?
В чем проблема, там есть примеры присваивания и получение значение из структур.
Вам всего навсего нужно еще преобразовать double в string. DoubleToString
В чем проблема, там есть примеры присваивания и получение значение из структур.
Вам всего навсего нужно еще преобразовать double в string. DoubleToString
Что вы написали и как это решает мою задачу? Непонятно.
И это всего лишь пример был. Моя структура имеет несколько полей разных типов. И я не знаю тип поля, знаю только имя поля.
У меня есть имя стринговое поля структуры. Хочу, зная это имя, запросить соответствующее поле структуры, т.е. получить значение в этом поле.
разбаловались, понимаешь, на джаве)
вам это надо
https://www.mql5.com/ru/code/13663
Что вы написали и как это решает мою задачу? Непонятно.
И это всего лишь пример был. Моя структура имеет несколько полей разных типов. И я не знаю тип поля, знаю только имя поля.
У меня есть имя стринговое поля структуры. Хочу, зная это имя, запросить соответствующее поле структуры, т.е. получить значение в этом поле.
Посмотрите сюда, может это то что надо?
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Можно ли программно определить тип пиременной ?
Anatoli Kazharski, 2015.06.17 17:07
Хотел бы спросить?
https://book.mql4.com/ru/build/conditions
Функция вычисляет торговые критерии. Функция возвращает следующие значения:
10 - сработал торговый критерий для открытия рыночного ордера Buy;
20 - сработал торговый критерий для открытия рыночного ордера Sell;
11 - сработал торговый критерий для закрытия рыночного ордера Buy;
21 - сработал торговый критерий для закрытия рыночного ордера Sell;
return 10 20 11 21 возвращаемые значенияпочему так зациклена программа на возвращаемых значениях для чего так сделано?
Посмотрите сюда, может это то что надо?
А у меня несколько полей однотипных. Вряд ли поможет.
Я нашёл вот это https://www.mql5.com/ru/code/16282
Решил передавать не имя поля, а его адрес (смещение) в байтах.
Хотел бы спросить?
https://book.mql4.com/ru/build/conditions
Функция вычисляет торговые критерии. Функция возвращает следующие значения:
10 - сработал торговый критерий для открытия рыночного ордера Buy;
20 - сработал торговый критерий для открытия рыночного ордера Sell;
11 - сработал торговый критерий для закрытия рыночного ордера Buy;
21 - сработал торговый критерий для закрытия рыночного ордера Sell;
почему так зациклена программа на возвращаемых значениях для чего так сделано?
Цикл - многократный повтор. Здесь же разветвление. После срабатывания первого условия выполняется оператор return и выполнение программы прекращается. Если если условие окажется ложным, проверяется второе условие и так далее... Если все 4 условия будут ложными - будет выполняться далее