void OpenOrder(int db = -1){
if(db == -1){
Print("'db' должен иметь корректное значение");
return;
}
Order order;
//Если бид в границах ДБ (его хай/лоу) то инициализируем ордер для селстопа или байстопаif(Bid > db_last.low && Bid < db_last.hight){
if(db == BEAR) order.InitForSell(SELLSTOP);
if(db == BULL) order.InitForBuy(BUYSTOP);
}
...
if(order.is_init == true)
{
int order_send = OrderSend(Symbol(), order.cmd, 0.01, order.open_price, 10,
order.sl_price, order.tp_price, "", GetMagic(order), 0, order.arrow_color);
if(order_send == -1){
Print(order.error_text," | ",GetLastError()," db_last.third ",db_last.third,
" | db_last.size_open_to_low ",db_last.size_open_to_low," | order.sl_price: ",
order.sl_price," | order.cmd ",order.cmd);
ResetLastError();
return;
}
}
}
...
int GetMagic(Order &order)
{
int magic = 0;
//Если должен быть открыт стопордер и если есть уже открытые или отложенные //ордера, то возможно некоторые с маджиком, это надо проверить и сгенерировать //для нашего ордера уникальный маджикif(order.cmd == OP_SELLSTOP || order.cmd == OP_BUYSTOP)
if(OrdersTotal() >= 1)
for(;;){
magic++;
for(int i = OrdersTotal(); i > 0 ; i --)
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES) != false) //<------------ СЮДА НЕТ ВХОЖДЕНИЯif(magic != OrderMagicNumber())
return magic;
}
//Если нет открытых или отложенных ордеров то увеличиваем значение //маджика, чтобы он равнялся единицеelseif (OrdersTotal() == 0)
return (magic + 1);
return magic;
}
Boa noite, escrevi um indicador muito simples no trabalho (anexo o arquivo) Gostaria de esclarecer se há uma maneira de prescrever no código em vez de uma linha vermelha e azul (RSI2 e RSI3 na figura (anexo também), respectivamente) era uma única linha - e era vermelha se RSI2>RSI3 e azul se RSI2 < RSI3
#property indicator_color2 Red
#property indicator_color3 Blue
externint RSIPERIOD=3;
externdouble KOEFF1=2.5;
externdouble KOEFF2=1.86;
double Buf0[],Buf1[],Buf2[];
double D10,D11,D12;
int init()
{
IndicatorDigits(0);
string short_name="RSITEST";
IndicatorShortName("RSITEST");
D10=RSIPERIOD;D11=D10*KOEFF1;D12=D11*KOEFF2;;
SetIndexBuffer(0,Buf0);
SetIndexLabel (0,"Stoch "+Ds_0(D10)+")\n");
SetIndexBuffer(1,Buf1);
SetIndexLabel (1,"Stoch ("+Ds_0(D11)+")\n");
SetIndexBuffer(2,Buf2);
SetIndexLabel (2,"Stoch ("+Ds_0(D12)+")\n");
return(0);
}
int start()
{
if(Bars<=RSIPERIOD) return(0);
int ExtCountedBars=IndicatorCounted();
if (ExtCountedBars<0) return(-1);
if (ExtCountedBars>0) ExtCountedBars--;
for(int i=0;i<Bars-RSIPERIOD;i++)
{
Buf0[i] = iRSI(NULL,0,D10,0,i);
Buf1[i] = iRSI(NULL,0,D11,0,i);
Buf2[i] = iRSI(NULL,0,D12,0,i);
}
return(0);
}
string Ds_0(double DOUBLE) {return(DoubleToStr(DOUBLE,0));}
Andrey Kipyatkov #: Boa noite, escrevi um indicador muito simples no trabalho (arquivo anexo) Gostaria de esclarecer se há uma maneira de prescrever no código em vez de uma linha vermelha e azul (RSI2 e RSI3 na figura (anexado também), respectivamente) era uma única linha - e era vermelho se RSI2>RSI3 e azul se RSI2 < RSI3
https://docs.mql4.com/ru/constants/namedconstants/otherconstants Eu não vejo realmente comoEMPTY_VALUE pode me ajudar. Eu tenho 3 matrizes e cada uma dá rsy se eu definir EMPTY_VALUE, simplesmente não me dá nada. minha tarefa é escrever no código em vez de linha vermelha e azul a mesma linha - e será vermelho seRSI2>RSI3 e azul seRSI2<RSI3
Andrey Kipyatkov #: https://docs.mql4.com/ru/constants/namedconstants/otherconstants Eu realmente não entendo comoEMPTY_VALUE pode me ajudar. Tenho 3 matrizes, cada uma delas produz Rsai se eu colocar EMPTY_VALUE ele simplesmente não me dará nada. minha tarefa é escrever no código em vez de linha vermelha e azul a mesma linha - e será vermelho seRSI2>RSI3 e azul seRSI2<RSI3
Andrey Kipyatkov #: https://docs.mql4.com/ru/constants/namedconstants/otherconstants Eu não vejo realmente comoEMPTY_VALUE pode me ajudar. Eu tenho 3 matrizes e cada uma dá Rsai se eu definir EMPTY_VALUE não me dá nada. minha tarefa é escrever no código em vez de linha vermelha e azul a mesma linha - e será vermelho seRSI2>RSI3 e azul seRSI2<RSI3
Mude de cor conforme necessário para atender às suas necessidades
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Boa noite, escrevi um indicador muito simples no trabalho (arquivo anexo) Gostaria de esclarecer se há uma maneira de prescrever no código em vez de uma linha vermelha e azul (RSI2 e RSI3 na figura (anexado também), respectivamente) era uma única linha - e era vermelho se RSI2>RSI3 e azul se RSI2 < RSI3
em mt5 você pode
Também no mt4 :)
Também no mt4 :)
EMPTY_VALUE
Também no mt4 :)
https://docs.mql4.com/ru/constants/namedconstants/otherconstants Eu realmente não entendo comoEMPTY_VALUE pode me ajudar. Tenho 3 matrizes, cada uma delas produz Rsai se eu colocar EMPTY_VALUE ele simplesmente não me dará nada. minha tarefa é escrever no código em vez de linha vermelha e azul a mesma linha - e será vermelho seRSI2>RSI3 e azul seRSI2<RSI3
https://docs.mql4.com/ru/constants/namedconstants/otherconstants Eu não vejo realmente comoEMPTY_VALUE pode me ajudar. Eu tenho 3 matrizes e cada uma dá Rsai se eu definir EMPTY_VALUE não me dá nada. minha tarefa é escrever no código em vez de linha vermelha e azul a mesma linha - e será vermelho seRSI2>RSI3 e azul seRSI2<RSI3
Mude de cor conforme necessário para atender às suas necessidades
Mude a cor conforme necessário para atender às suas necessidades
Realmente?!))
Você já tentou?