Синхронизация mql5 и c++ реализаций классов. - страница 8

 
Forester #:
Не точка для темы. Точка на конкретную замену МТ5, если в РФ не останется. Про Финам пишут, что тоже в следующем году может убрать МТ. Т.е. на наши биржи останется наверное Quick - он кажется бесплатный для юзеров и что-то программировать тоже можно (не вникал).

кому как

на форексе проблемы нет такой и рентабельность выше

к тому же компьютерщику не положено платить за проги ;)

 
Aleksey Nikolayev #:

Досконально не вникал, но вроде на крипте можно торговать бесплатно с каким-то урезанием функционала.

В маркете есть продукты которые к Бинансу подключаются и работают через АПИ. Возможно и к др. биржам есть.
Но проблема - Бинанс в процессе ухода из России (сделают др. локализованную биржу-дочку, но как оно будет ....?)
 
Все идет к тому, что придется делать кликер, который будет прямо из браузера торговать)))
 
То странное ощущение, когда вроде уходят из страны с деньгами ее граждан, а они скорбят по этому поводу, что мало вложились :)
 
Maxim Dmitrievsky #:
То странное ощущение, когда вроде уходят из страны с деньгами ее граждан, а они скорбят по этому поводу, что мало вложились :)

где тут в интерфейсе "лайк" поставить ? :-)

 

С массивами наверно проще всего примерно так:

#ifdef __MQL5__
#define ARRTYPE(t) t
#define ARRNAME(n) n[]
#else
#include <stdio.h>
#include <vector>
#define ARRTYPE(t) std::vector<t>
#define ARRNAME(n) n

template <typename T> int ArraySize(vector<T> v)
{return v.size();}

template <typename T> int ArrayResize(vector<T>& v, int s, int c=0)
{v.resize(s); return v.size();}

#endif

void vec()
{
  ARRTYPE(double) ARRNAME(v);
  printf("%d\n",ArraySize(v));
  ArrayResize(v,10);
  printf("%d\n",ArraySize(v));
  v[0]=42.0;
  printf("%f\n",v[0]);
}
Хорошо ещё то, что printf() работает в mql5.
 
Aleksey Nikolayev #:

С массивами наверно проще всего примерно так:

Для меня так проще было бы.

#ifdef __MQL5__
#define ARR(t, n) t n[]
#else
#include <stdio.h>
#include <vector>
#define ARR(t, n) std::vector<t> n
// ...
#endif

void vec()
{
  ARR(double, v);
  // ...
}
Только const и static массивы потребуют что-то дополнительно. Ну и передача массива в функцию.
 
fxsaber #:

Для меня так проще было бы.

Согласен что проще, но хочется избегать пробелов в подстановках - вроде бы с этим могут быть проблемы, хотя не помню какие.
 
Aleksey Nikolayev #:
хочется избегать пробелов в подстановках - вроде бы с этим могут быть проблемы, хотя не помню какие.
#define ARR(t, n) t n[]

void OnStart()
{
  ARR(          double        ,Array         );
}
 
fxsaber #:

Не, речь об этом пробеле

#define ARR(t, n) t n[]

Почему то осталось ощущение о его небезопасности. Вполне возможно ошибаюсь или что-то путаю.