Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В длл приходит дабл.
А вот- перевод из дабла в строку.
procedure TRConsole.AssignDouble(AVariable: Ansistring; AValue: Double);
begin
ExecuteCode(Format('%s <- %g', [AVariable, AValue]));
end;
Так и я о том же. Но в кавычках стоит Buf, которая дабл в Р! По идее, дабл пересылается в дабл. Поэтому не понятно, какое отношение имеется код из библиотеки к реалиям.
Я вижу, что формируются строки, которые отправляются в консоль.
Не понял.. пожалуйста, напишите подробно, как по-вашему это всё работает.
Я вижу, что формируются строки, которые отправляются в консоль.
Такое впечатление, что исходник не имеет отношение к реальности. В этой строке:
RAssignVector (R, "Buf", Buf_EUR, ArraySize(Buf_EUR))
Buf имя вектора с элементами типа дабл и Buf_EUR - массив с элементами типа дабл. Что тут перекодировать? Исходник левый. А длл работающая, это проверено.
из массива даблов создается строчка- теже даблы, списком, через запятую.
Как что перекодировать?!
из массива даблов создается строчка- теже даблы, списком, через запятую.
Зачем создавать, когда с другой стороны даблы?. А потом, где перекодировка строчек в даблы для Р?
Не левый исходник.
Зачем создавать, когда с другой стороны даблы?. А потом, где перекодировка строчек в даблы для Р?
Не левый исходник.
В этом прописана работа через консоль.
Ок, давате другой исходник.
В этом прописана работа через консоль.
У меня его нет.
Вообще у меня мечта получить обертку на С, а не паскале с исходником. Агитирую всех подряд, но никто не раскололся.
У меня его нет.
Вообще у меня мечта получить обертку на С, а не паскале с исходником. Агитирую всех подряд, но никто не раскололся.
Иначе надо вмешиваться непосредственно в сам терминал-
качать Р-овские исходники и врубаться...
Обёртка ехе-шника может быть только такой- строчки с консолькой гонять...
Иначе надо вмешиваться непосредственно в сам терминал-
качать Р-овские исходники и врубаться...
Давайте еще раз со строкой:
RAssignVector (R, "Buf", Buf_EUR, ArraySize(Buf_EUR))
В языках, имеющих векторные (матричные) операции эта строка выглядит так :
Buf = Buf_EUR
В R весь вектор Buf можно переслать в другой вектор, как и любой его элемент Buf[i]. Из-за мт4 порядок нумерации с R наоборот, как обычно.
Причем здесь терминал. Обычные адреса памяти.
Текст на паскале вообще не понятен. В документации R определена связь с С. Все расписано, но я не смотрел. Поэтому естественна обертка на С, а не на паскале. Думаю, что перекодировка не понадобиться.
Так что врубаться в текст Р необходимости нет. Надо просто знать С и правила построения длл на С для мт4.
Я не знаю что ответить. Для ртерм.ехе нужна строка, которую снаружи введут в терминал.
Была бы завязка на длл- другое дело. С ехе- только так.