Ошибки, баги, вопросы - страница 1202

[Удален]  
В маркете, в обсуждениях, в андроиде - доступна кнопка "Правка"  в сообщениях, выдает окно для правки сообщения, после отправки отредактированного сообщения выдает ошибку 403
 
Всегда думал, что в терминале те инструменты, по которым торговля запрещена (так называемые индикативы) отображаются серым цветом. А сегодня попробовал торгануть CFD российских акций - отображаются черным цветом - получил ошибку Trade is disabled. Это ошибка в настройке серверной части у брокера или ошибка в терминале?
 
marketeer:
Всегда думал, что в терминале те инструменты, по которым торговля запрещена (так называемые индикативы) отображаются серым цветом. А сегодня попробовал торгануть CFD российских акций - отображаются черным цветом - получил ошибку Trade is disabled. Это ошибка в настройке серверной части у брокера или ошибка в терминале?
А время было торговым? Лучше всего обратиться в службу поддержки брокера.
 
barabashkakvn:


А размеры подбирать методом проб и ошибок, а по-простому "Методом Тыка". 

Есть бесплатная программка для захвата видео с экрана - oCam. Она позволяет ещё и делать скрины нужного размера. Можно её рамку выставить в размеры 640х480 и попытаться впихнуть в неё терминал.

Хотя... судя по такому маленькому "окошечку", сложновато будет "впихнуть туда невпихуемое" ...

 

Ошибка при выборе перегруженной функции

class A {};

class B : public A {};

void f( A*  ) { Print( 1 ); }
void f( B*& ) { Print( 2 ); }
void g( A*  ) { Print( 3 ); }
void g( B*  ) { Print( 4 ); }

void OnStart()
{
        B* b = new B;
        f( b ); //вызов f( A* ), а должен вызвать f( B*& )
        g( b ); //вызов g( B* ) 
        delete( b );
}
 Результат: (1,4) а должен быть - (2,4). Указатель B* не перестает быть указателем, если передается по ссылке
 
A100:

Ошибка при выборе перегруженной функции

 Результат: (1,4) а должен быть - (2,4). Указатель B* не перестает быть указателем, если передается по ссылке
Спасибо за сообщение, исправлено.
 
Renat:
А время было торговым? Лучше всего обратиться в службу поддержки брокера.
Время торговое, тики тикают. К брокеру обратился. Они ответили, что российские CFD - индикативы. Почему они отображаются в терминале черным, они не знают.
 

Вопрос - объемы, которые показаны в стакане (ФОРТС) - это совокупный объем заявок как на покупку, так и на продажу (buy stop+sell limit, или buy limit+sell stop, если по форексовской терминологии)? Или то, что сверху - красная зона - это только объем sell limit, а в нижней половине стакана - только buy limit?

Другими словами, сверху - тоько лимитные заявки выгоднее продать, а снизу - заявки выгоднее купить, или везде общая сумма продавцов и покупателей? 

 

На реальных биржевых серверах конечно же объемы отдельно на продажу и покупку.

На тестовых биржевых (не путайте с форексом) серверах котировки зачастую от совершенно другой тестовой симулятивной системы и биржевые "демо сервера" ни в коем случае нельзя использовать для анализа.

 

Ошибка при выполнении: incorrect casting of pointers (build 977, но и раньше такая периодически возникала)

//AAA15.mq5
#define PF              Print( __FUNCTION__ );
#define PFI( i )        Print( __FUNCTION__, " ", i );
class A { public:
};
class R { public:
        void y( A* a )          { PF  ((B *)a).g( 1 ); }
};
class L : public R { public:
        void y( A* a )          { PF  ((B *)a).g( 2 ); }
};
class B : public A { public:
        virtual void g( R* r )  { PF  r.y( GetPointer( this ) ); delete( r ); }
        virtual void g( int i ) { PFI( i ) }
};
class C : public B { public:
        virtual void g( int i ) { PFI( i ) }
};
#import "AAA17.ex5"
        C *f();
#import "AAA16.ex5"
        void h();
        R *w();
#import
#ifndef HEADER
void OnStart()
{
        f().g( w() );
        h();
}
#endif
//AAA16.mq5
#property library
#define HEADER
#include "AAA15.mq5"
void h() export { PF  f().g( w()); }
R *w()   export { PF  return new L(); }
//AAA17.mq5
#property library
#define HEADER
#include "AAA15.mq5"
class X { public:
        X()           { PF  c = new C(); }
        virtual ~X()  { PF  delete( c ); }
        C *c;
};
static X x;
C *f() export { PF  return ( x.c ); }

Если что-то передвинуть (в примеру поменять местами объявления #import) или вместо 3-х сделать 2 файла, или убрать вызов h() - то вместо указанной - возникают уже другие ошибки

Если код выше перекомпоновать, то в конечном счете вызывается R::y, а должна вызываться L::y

 В более сложном варианте некоторые обычные функции из модулей сами (видимо другими конструкторами) вызываются до (!) статических конструкторов (как если бы в приведенном выше примере f() вызывалась бы до X::X, который в свою очередь правильно вызывается до OnStart). Пример постараюсь привести, но там громадные файлы. Но иногда работает правильно, значит ошибка не у меня, поскольку порядок создания объектов определяется самим компилятором и я не могу на него повлиять