База котировок в Дельфи

 
Может кто подскажет, где надыбать программку, точнее её код, позволяющую обрабатывать котировки пар в Дельфи и возвращать какой-то результат, а также код программки грамотно передающей котировки в Дельфи с синхронизацией. Или может кто-то поделится опытом в этой области. Или сколько это могло бы стоить?
 
Может С++?? Что никто этим не интересовался?
 

не очень понятно чего ты хочешь

можешь через dde котировки передавать

или через разные mt4 api коих штук 5 точно от бесплатных до очень дорогих

 
kaisa >>:

или через разные mt4 api коих штук 5 точно от бесплатных до очень дорогих

Вот с этого момента, если можно - поподробнее, пожалуйста...

 
zfs >>:
Может кто подскажет, где надыбать программку, точнее её код, позволяющую обрабатывать котировки пар в Дельфи и возвращать какой-то результат, а также код программки грамотно передающей котировки в Дельфи с синхронизацией. Или может кто-то поделится опытом в этой области. Или сколько это могло бы стоить?

А длл-пример из стандартного пакета запустить не пробовал? Синхронная обработка котировок с возвращением результата.

 
VNIK >>:

Вот с этого момента, если можно - поподробнее, пожалуйста...

самая известная mt4 чегото там comm бесплатна могу порыться валяется где-то

для своих задач использую разработку бразильских товарищей всего 50 баков

на английском форуме где-то есть

ну и т д и т п

 
kaisa >>:

самая известная mt4 чегото там comm бесплатна могу порыться валяется где-то

для своих задач использую разработку бразильских товарищей всего 50 баков

на английском форуме где-то есть

ну и т д и т п

kaisa - отправил личное сообщение.

 

Чего непонятно... я хочу получить файл формата *.GDB, содержащего котировки полученные из MT4, программа Дельфи анализирует котировки в базе и вновь поступающие и выдает обратно результат в MT. Соответственно, что надо программы MT, Дельфи и dll видимо. Дайте хоть, что бесплатное.... длл пример не видел, мало чего хорошего на эту тему видел... и тяжело понять технологии api, что там к чему... хотелось бы обсудить.

 
zfs >>:

Чего непонятно... я хочу получить файл формата *.GDB, содержащего котировки полученные из MT4, программа Дельфи анализирует котировки в базе и вновь поступающие и выдает обратно результат в MT. Соответственно, что надо программы MT, Дельфи и dll видимо. Дайте хоть, что бесплатное.... длл пример не видел, мало чего хорошего на эту тему видел... и тяжело понять технологии api, что там к чему... хотелось бы обсудить.

Всё равно не понятно, что же нужно.


В приведенном примере процесс обработки выглядит примерно так:

МТ4 -> файл формата *.GDB -> программа на Delphi -> МТ4


Хотя наверное должно выглядеть примерно так:

МТ4 -> dll -> МТ4

а вот уже из dll наверное можно выгружать в "файл формата *.GDB", если есть желание хранить эти данные.


Ещё один момент, что нужно обрабатывать? Если текущую цену, в виде бида или аска, это одно, если нужно передать на обработку OHLCV то это немного другое. В обоих случаях немного разные методы обработки. Например, если обрабатывается текущий бид, нужно ли где то в инициализации сначала передать исторические данные? Или, в случае OHLC, внешняя обработка должна запускаться на каждом тике, что часто бессмысленно для этого случая, или только в том случае когда OHLCVсформирован полностью. Ну и т.д.

 
HideYourRichess >>:

Всё равно не понятно, что же нужно.


В приведенном примере процесс обработки выглядит примерно так:

МТ4 -> файл формата *.GDB -> программа на Delphi -> МТ4


Хотя наверное должно выглядеть примерно так:

МТ4 -> dll -> МТ4

а вот уже из dll наверное можно выгружать в "файл формата *.GDB", если есть желание хранить эти данные.


Ещё один момент, что нужно обрабатывать? Если текущую цену, в виде бида или аска, это одно, если нужно передать на обработку OHLCV то это немного другое. В обоих случаях немного разные методы обработки. Например, если обрабатывается текущий бид, нужно ли где то в инициализации сначала передать исторические данные? Или, в случае OHLC, внешняя обработка должна запускаться на каждом тике, что часто бессмысленно для этого случая, или только в том случае когда OHLCVсформирован полностью. Ну и т.д.

OHLCV 24 пар передаем не знаю как лучше в Дельфи... Дельфи сохраняет информацию в gdb. Анализирует её на наличие дыр. Раз в минуту,н-р, обновляет базу, опять анализирует и выдает ответ в MT результат вычислений в виде 8 массивов.

 
zfs >>:

OHLCV 24 пар передаем не знаю как лучше в Дельфи... Дельфи сохраняет информацию в gdb. Анализирует её на наличие дыр. Раз в минуту,н-р, обновляет базу, опять анализирует и выдает ответ в MT результат вычислений в виде 8 массивов.

Способа "лучше", пожалуй, не будет. На вскидку, нужны как минимум две функции, одна передает данные в длл,

например: void SetData( string Symbol, int DateTime, double O, double H, double L, double C, double V);

её придется вызывать 24 раза для каждого символа. На каждом тики или как там задумано, в советнике или индикаторе, проверять периодичность и вызывать.

И другая функция, которая вызывается для обработки данных, переданных через SetData,

например int AnalizeData( double& arr1[], double& arr2[].....)

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

Ещё придется в самом МТ организовать 8 массивов (arr1, arr2 и т.д.), дать им размер побольше, что бы результирующие массивы поместились полностью.


Как то так, наверное.


Можно написать 24 советника, каждый на свой символ, и 24 функции в длл, для SetData, ну а дальше анализ и возврат результатов. :)


Задача то в общем то не сложная, просто объемная. Напрямую, лазить в МТ за данными, вряд ли получится, так что бы безболезненно было. В принципе, есть функции типа iClose() и т.д. их и придется использовать, если из одного советника передавать данные в длл. Если из 24 советников, то можно передавать массивы Close[] и т.д. в длл. И я так понимаю, все 24 пары должны быть в "обзоре рынка", полубому.


Здесь обработка зависит от программы в МТ, т.е. функции передачи данных, обработка и возврат данных инициируются из МТ. Вариант, когда МТ и длл работают независимо - сложнее, нужно будет делать многопоточную длл.

Причина обращения: