То есть за один прогон тестера я могу добавить фрейм только один раз?
Некоторая логика в этом есть, т.к. фрейм возвращает значение, соответствующее набору определенных значений входных параметров советника.
Как добавить два фрейма и вытащить потом тоже два?
Делайте простую структуру из двух статических uchar массивов. В каждый загоняйте строку и передавайте полученный структуру через фрейм.
Во фрейм же можно передавать только массивы с простыми типами данных.
В любом случае, похоже что да, один проход - один фрейм.
В итоге добавил в массив uchar второй объект string, потом уже их вытаскиваю и разделяю.
нужно после прогона в тестере сохранить две переменных string с результатами
Здесь пример, как можно передать любое количество строк через фреймы.
Спасибо.
Здесь я так понял массив разбивается по байтово в uChar и записывается во фрейм:
FrameAdd("Temp", 0, 0, _R(Str.Array).Bytes);
Здесь я так понял массив разбивается по байтово в uChar и записывается во фрейм:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Добрый день.
Подскажите, такой вопрос, нужно после прогона в тестере сохранить две переменных string с результатами (для записи в два разных csv файла), соответственно, делаю два FrameNext в процедуре OnTester:
StringToCharArray(glb_toWriteAllResults,glb_uCharStringArray);
FrameAdd("WeightsAndResultsByTest",1,0,glb_uCharStringArray);
StringToCharArray(glb_toWriteMessagesOfTesting,glb_uCharMessagesOfTesting);
FrameAdd("MessagesOfTesting",2,0,glb_uCharMessagesOfTesting);
Уже в OnTesterPass делаю
string name ="WeightsAndResultsByTest";
long id =1;
double val =0.0;
FrameFilter(name, id); //пробовал с FrameFilter и без
FrameNext(glb_passes_count,name,id,val,glb_uCharStringArray);
string nameMessagesOfTesting = "MessagesOfTesting";
long idMessagesOfTesting = 2;
FrameFilter(nameMessagesOfTesting, idMessagesOfTesting); //пробовал с FrameFilter и без
FrameNext(glb_passes_count,nameMessagesOfTesting,idMessagesOfTesting,val,glb_uCharMessagesOfTesting);
Фрейм оба раза вытаскивается только первый, то есть первый FrameAdd.
Открыл mqd файл, куда он скидывает фреймы, там фрейм только первый.
То есть за один прогон тестера я могу добавить фрейм только один раз? или нет? Как добавить два фрейма и вытащить потом тоже два?