Можно ли передавать объемы по DDE как OHLC

 
Всем доброго времени суток!
Столкнулся с проблемой передачи объемов в реальном времени.
Можно ли их передавать по DDE как передаются параметры свечи D1
   запрос BID:    = MT4|BID!USDCHF         результат:  1.5773  
   запрос ASK:    = MT4|ASK!USDCHF         результат:  1.5778  
   запрос HIGH:   = MT4|HIGH!USDCHF        результат:  1.5801  
   запрос LOW:    = MT4|LOW!USDCHF         результат:  1.5741  
   запрос TIME:   = MT4|TIME!USDCHF        результат:  21.05.02 9:52  
   запрос QUOTE:  = MT4|QUOTE!USDCHF       результат:  21.05.02 9:52 1.5773 1.5778 1.5776  
Заранее благодарен?
 
думаю объемы Вы никак получите по DDE, а если решите получать одновременно сразу несколько символов по DDE, то заметите сколько будет пропущенных тиков по DDE, у меня так было. Не тратьте время, сделайте .dll с filemapping и создайте событие запись тика для приложения которое "слушает" тики, все работает как часы без пропущенных тиков и с передачей большого объема данных
 
Ок
 

Я вот тут подумал, у меня проблема в следующем:
сигнал онлайн скидывается в базу данных при приходе тика по инструменту которому он соответствуе и одновременно на программу обсчитывающую статистику.

Следом гипотетический вопрос а вообще можно ли держать одно открытое окно, а по DDE скидывать котировки по всем фининструментам?

Если да, можно пример, даже криво работающий.

 
Debugger:

Я вот тут подумал, у меня проблема в следующем:
сигнал онлайн скидывается в базу данных при приходе тика по инструменту которому он соответствуе и одновременно на программу обсчитывающую статистику.

Следом гипотетический вопрос а вообще можно ли держать одно открытое окно, а по DDE скидывать котировки по всем фининструментам?

Если да, можно пример, даже криво работающий.

//+------------------------------------------------------------------+
//|                                                 CollectTicks.mq4 |
//|                      Copyright © 2006, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net/"

int ExtHandle=0;    // file handle
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void init()
  {
//----
   if(ExtHandle!=0) FileClose(Symbol()+Period()+".txt");
   ExtHandle=FileOpen(Symbol()+Period()+".txt",FILE_CSV|FILE_WRITE,' ');
//----
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void deinit()
  {
//----
   if(ExtHandle!=0) { FileClose(ExtHandle); ExtHandle=0; }
//----
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void start()
  {
   if(ExtHandle!=0) FileWrite(ExtHandle,TimeToStr(TimeCurrent(),TIME_DATE|TIME_SECONDS),";", Ask, ";", Bid);
  }
//+------------------------------------------------------------------+

Сделайте циклическую подстановку вместо Symbol0 инструментов и получится

Вторую строчку перенести из init() в start() после if(....

Файлы будут в /expert/files/ дописываться примерно раз в две минуты.

Туда можно записывать всё что угодно

 
Debugger:

Следом гипотетический вопрос а вообще можно ли держать одно открытое окно, а по DDE скидывать котировки по всем фининструментам?

вот ехе-шник который по ДДЕ принимает символы которые у него сохранены в файле symbol.txt, все что будет в окне обзор рынка он прочитает по ДДЕ, но я на Delphi обычно проекты составляю, на С++ редко, если интересно то могу вечерком исходники у себя поискать

Файлы:
dde.zip  263 kb
 

У меня сейчас работает через скидывание в файл.

Хотелось сделать без лишних промежуточных операций.

Если не сложно буду ждать исходники.

Заранее благодарен.

 
Debugger:Если не сложно буду ждать исходники.

на Delphi устроит?

У меня сейчас работает через скидывание в файл.
я же писал, используйте filemapping, все работает очень быстро и без пропусков тиков, в кодобазе недавно выкладывали хороший пример filemapping
 

я тоже использую в файлмаппинг для нейросети

если не сложно накидай схемку от руки

 
вот нашел черновики файлмаппинга, у меня создается событие запись в файл и мьютекс которые разделяет доступ к чтению/записи
Файлы:
 
Сюда загляните : https://www.mql5.com/ru/code/10568
Причина обращения: