오류, 버그, 질문 - 페이지 1290

 
Tapochun :
감사합니다 . OnTrade() 및 OnTradeTransaction() 함수를 여전히 사용할 수 없다는 것을 어떻게 이해합니까?
당신은 올바르게 이해하고 있습니다. 금지되어 있습니다.
 

1. 한 터미널에서 언어를 변경하면 재부팅 후 다른 모든 터미널로 변경되는 이유는 무엇입니까?

자세히: 10개의 MT4/765 터미널이 출시되었으며, 그 중 하나는 언어를 러시아어로 변경했습니다. 영어로. 그리고 다시 시작했습니다. 다른 터미널을 다시 시작하면 언어도 변경됩니다!

2. 지표, 전문가, 차트 설정과 같이 프로필이 변경될 때 프로필이 자동으로 기억되지 않는 이유는 무엇입니까?

자세히: 어제 프로필을 설정하고 거래했는데 오늘 조명이 꺼지고 터미널을 다시 시작했을 때 변경 사항이 저장되지 않았지만 변경 사항 이전의 변경 사항이 로드되었습니다.
예를 들어 10분마다 또는 1시간마다와 같이 특정 시간 후에 프로필을 자동으로 기억하는 것은 나쁘지 않을 것입니다.

 
Novikov :

2. 지표, 전문가, 차트 설정과 같이 프로필이 변경될 때 프로필이 자동으로 기억되지 않는 이유는 무엇입니까?

프로필은 애플리케이션이 정상적으로 종료될 때 저장됩니다.
저장이 필요하다면 터미널을 닫고 다시 열면 행복이 있을거에요 :)
 
fyords :
프로필은 애플리케이션이 정상적으로 종료될 때 저장됩니다.
저장이 필요하다면 터미널을 닫고 다시 열면 행복이 있을거에요 :)

"너 없이 나는 무엇을 할 수 있을까?" :)

3. 견적은 어디로 가나요?

자세히: RENCO 차트를 작성하기 위해 m1 따옴표를 로드합니다. 터미널이 올바르게 닫히지 않은 후(정전), 따옴표를 다시 로드해야 합니다!

 
Android 모바일에서 다른 사람의 프로필로 이동하면 메시지를 작성할 수 있는 버튼이 없는 이유는 무엇입니까? 메시지에서 새로운 통신원의 로그인을 손으로 입력해야합니다 .... 불편한 피펫 ..
 
Novikov :

"너 없이 나는 무엇을 할 수 있을까?" :)

3. 견적은 어디로 가나요?

자세히: RENCO 차트를 작성하기 위해 m1 따옴표를 로드합니다. 터미널이 올바르게 닫히지 않은 후(정전), 따옴표를 다시 로드해야 합니다!

그들은 모든 변경 사항이 올바르게 완료되면 ....로드 된 따옴표를 포함하여 저장된다고 말합니다.
 

내가 이해하는 한 구조체 멤버 는 표시기 버퍼로 사용할 수 없습니다. 예를 들면 다음과 같습니다.

 struct Buffers
{
     double buffer [];
};

그러나 수십 개의 버퍼가 필요하고 다음과 같이 작동하지 않으면 어떻게 해야 할까요?

 struct Buffers
{
     double buffer [];
};

Buffers IndBuff;

void Func()
{
  IndBuff[ 0 ].buffer[ 0 ]= 3.1415926 ;
}
 
paladin800 :
예, 저도 이 기능을 발견했습니다. 외부 매개변수에서 하나의 변수를 4AM으로, 두 번째 변수를 5PM으로 만든 다음 TimeGMT()의 결과를 비교하는 방법을 알 수 없습니다.

오랫동안 보지 않았습니다.

오전 4시는 04:00입니다.
오후 5시 17시

 
joo :

내가 이해하는 한 구조체 멤버 는 표시기 버퍼로 사용할 수 없습니다. 예를 들면 다음과 같습니다.

할 수 있다
 
joo :

내가 이해하는 한 구조체 멤버 는 표시기 버퍼로 사용할 수 없습니다. 예를 들면 다음과 같습니다.

그러나 수십 개의 버퍼가 필요하고 다음과 같이 작동하지 않으면 어떻게 해야 할까요?

다음은 악명 높은 작가에게서 찾은 예입니다. )

 //+------------------------------------------------------------------+
//|                                                  EMA_Rainbow.mq5 |
//|                                       Copyright 2012, MetaDriver |
//|                                            MetaDriver@rambler.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaDriver"
#property link        "MetaDriver@rambler.ru"
#property version    "1.00"
//---
#define CountLine   50
//---
#property indicator_chart_window
#property indicator_buffers CountLine
#property indicator_plots    CountLine

//--- Внешние параметры
input int    FastPeriod   = 5 ;
input int    PeriodStep   = 5 ;
input color FastColor    = clrAqua ;
input color MiddleColor  = clrDodgerBlue ;
input color SlowColor    = clrBlue ;
input color LFastColor   = clrYellow ;
input color LMiddleColor = clrOrange ;
input color LSlowColor   = clrOrangeRed ;
//--- 
struct SBuffer
  {
   double             B[];
  };
//--- indicator buffers
SBuffer       EmaBuffer[CountLine];
//---
color Colors[CountLine];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit ()
  {
//--- indicator buffers mapping
   InitColors();
//---
   for ( int i= 0 ; i<CountLine; i++)
      InitBuffers(i);
//---
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate ( const int     rates_total,
                 const int     prev_calculated,
                 const int     begin,
                 const double &price[])
  {
//---
   int limit=rates_total-prev_calculated;
//---
   if (limit== 1 )
      limit++;
//---
   if (prev_calculated== 0 )
     {
      limit-=begin+ 1 ;
       for ( int i= 0 ; i<CountLine; i++)
         EmaBuffer[i].B[limit]=price[limit];
     }
//---
   if (limit!= 0 )
     {
       for ( int i= 0 ; i<CountLine; i++)
        {
         double p= 2 ./(FastPeriod+PeriodStep*(CountLine-i)+ 1 );
         //---
         for ( int j=limit- 1 ; j>= 0 ; j--)
            EmaBuffer[i].B[j]=price[j]*p+EmaBuffer[i].B[j+ 1 ]*( 1 .-p);
        }
     }
//--- return value of prev_calculated for next call
   return (rates_total);
  }
//+------------------------------------------------------------------+
//| Инициализация цветных буферов                                    |
//+------------------------------------------------------------------+
void InitColors()
  {
   int Half=CountLine/ 2 ;
//---
   for ( int i= 0 ; i<Half; i++)
     {
       if (i% 4 == 3 )
         Colors[i]=MixColor(LSlowColor,LMiddleColor,i* 1.0 /Half);
       else
         Colors[i]=MixColor(SlowColor,MiddleColor,i* 1.0 /Half);
     }
//---
   for ( int i=Half; i<CountLine; i++)
     {
       if (i% 4 == 3 )
         Colors[i]=MixColor(LMiddleColor,LFastColor,(i-Half)* 1.0 /Half);
       else
         Colors[i]=MixColor(MiddleColor,FastColor,(i-Half)* 1.0 /Half);
     }
  }
//+------------------------------------------------------------------+
//| Определение цвета                                                |
//+------------------------------------------------------------------+
color MixColor( color A, color B, double mix)
  {
   int r = ( int ) MathRound ((B     & 0xFF ) * mix + (A     & 0xFF ) * ( 1 . - mix));
   int g = ( int ) MathRound ((B>> 8   & 0xFF ) * mix + (A>> 8   & 0xFF ) * ( 1 . - mix));
   int b = ( int ) MathRound ((B>> 16 & 0xFF ) * mix + (A>> 16 & 0xFF ) * ( 1 . - mix));
   return color (r|g<< 8 |b<< 16 );
  }
//+------------------------------------------------------------------+
//| Инициализация индикаторных буферов                               |
//+------------------------------------------------------------------+
void InitBuffers( int index)
  {
   SetIndexBuffer (index,EmaBuffer[index].B, INDICATOR_DATA );
   PlotIndexSetInteger (index, PLOT_DRAW_TYPE , DRAW_LINE );
   PlotIndexSetInteger (index, PLOT_LINE_COLOR ,Colors[index]);
   PlotIndexSetDouble (index, PLOT_EMPTY_VALUE , EMPTY_VALUE );
//---
   if (index% 8 == 7 ) PlotIndexSetInteger (index, PLOT_LINE_WIDTH , 1 );
  }
//+------------------------------------------------------------------+