MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 345

 
Сергей :

나는 당신을 완벽하게 이해하지만 당신은 틀렸습니다.

따옴표로 묶으면 다음을 얻습니다.

'EURUSD' - 예상되는 이름 마이인디 3(MA).mq4 61 십사

오른쪽

당신의 인용문은 어디에 있습니까?

'유로달러'

 
Artyom Trishkin :

인용 부호는 어디에 있습니까?


내 코드에 큰 따옴표가 있습니다. 오류가 발생하면 작은 따옴표가 표시됩니다. 나는 그것에 대해 아무 것도 할 수 없습니다.

창에 데이터를 출력하는 데 문제가 없습니다. 문제는 잘못된 결과입니다. 즉, "flat" 대신 "Attenthion!"이라고 씁니다. 그 반대. 알고리즘은 기본이고 어디서 망쳤는지 이해가 안됩니다 ...

컴파일에도 문제가 없습니다. 코드 #3437로 게시합니다.

 

칠면조 자신 다중 통화 표시기 를 JPY로 모든 쌍에 첨부할 때 잘못된 결과가 표시되는 이유를 알려주세요. 다른 쌍에서는 잘 작동합니다.

여기에서 논의된 지표 https://cloud.mail.ru/public/CAXu/p3uD3UzBJ . 그런 다음 그들은 질문에 도움이되지 않았습니다. 지금 도와 주시겠습니까 ??
 
Сергей :

내 코드에 큰 따옴표가 있습니다. 오류가 발생하면 작은 따옴표가 표시됩니다. 나는 그것에 대해 아무 것도 할 수 없습니다.

창에 데이터를 출력하는 데 문제가 없습니다. 문제는 잘못된 결과입니다. 즉, "flat" 대신 "Attenthion!"이라고 씁니다. 그 반대. 알고리즘은 기본이고 어디서 망쳤는지 이해가 안됩니다 ...

컴파일에도 문제가 없습니다. 코드 #3437로 게시합니다.

사람들이 추측하지 않고 일반적으로 당신이 말하는 내용을 이해할 수 있도록 입력 하는 메시지의 편집기에 이에 대한 모든 것이 있습니다.

여기에 코드를 파일로 첨부할 수 있습니다(하단에 + 첨부 파일 있음),

표시기 코드를 코드로 출력할 수 있습니다.

예를 들어:

 //+------------------------------------------------------------------+
//| Выводит в журнал список свечей серии                             |
//+------------------------------------------------------------------+
void CSeriesCollection::PrintListCandlesSeries( const uint num_candle)
  {
   int total=m_series.Total();
   :: Print ( "====== " +TextByLanguage( "Список свечей тайм-серии" , "List of time series candles" )+ " ======" );
   for ( int i= 0 ; i<total; i++){
      CCandleObject* candle=m_series.At(i);
       if (candle!= NULL ){
         datetime time=candle. Time ();
         if (time< TimeCurrent ()- PeriodSeconds ()*num_candle) continue ;
         string tm= TimeToString (candle. Time ());
         this .PrintCandle(candle);
         }
      }
   :: Print ( "====== " +TextByLanguage( "Список свечей тайм-серии" , "List of time series candles" )+ " ======" );
  }
//+------------------------------------------------------------------+

로그의 줄을 코드로 형식화할 수도 있습니다(터미널 로그에서 RMB로 복사하여 여기에 코드로 붙여넣을 수 있습니다(SRC 버튼)).

 2017.10 . 20 04 : 04 : 09.014 Свеча NZDUSD 2017.10 . 20 00 : 00 , open: 0.70296 , high: 0.70360 , low: 0.70260 , close: 0.70355 , vol tick: 87 , размер: 100 , тело: 59 , верх. тень: 5 , нижн. тень: 36 , тип: Бычья

그러면 사람들은 당신이 말하는 것을 오해하지 않을 것입니다.

그리고 사람들을 제3자 리소스로 보내어 거기에서 다운로드하도록 하여 어떻게 든 매우 친절하지 않은 것을 이해하지 못하게 하는 것입니다. 그렇죠?

 
Сергей :
...

컴파일에도 문제가 없습니다. 코드 #3437로 게시합니다.

음, 결국 #3437 을 마우스 오른쪽 버튼으로 클릭하고 "링크 복사"를 선택한 다음 메시지에 링크를 붙여넣을 수 있습니다(메시지 편집기에서도 가능). 그래야 사람들이 실제로 필요하지 않은 곳에서 스크롤하지 않도록 할 수 있습니다. )

 
Artyom Trishkin :

그리고 사람들을 제3자 리소스로 보내어 거기에서 다운로드하도록 하여 어떻게 든 매우 친절하지 않은 것을 이해하지 못하게 하는 것입니다. 그렇죠?


내 문맹을 용서하십시오.


MultiTimeFrames의 MyIndi 1 MultiCurrency. 하단에는 구매 포인트 수가 표시됩니다.

MyIndi ​2 1번과 동일하지만 초과분은 제거하였습니다. 아래에 추가된 데이터 - 이는 다양한 기간 동안의 분당 평균 가격 변동입니다.

MyIndi 3 다중 통화. 교대 근무가 있는 한 MA를 기반으로 합니다. 지표의 차이에 도달하면 MA는 "주의!"를 표시합니다.


(어떤 이유로) JPY 차트에 첨부하면 세 가지 모두 올바르게 작동하지 않습니다. MyIndi ​3는 코드가 매우 단순해도 전혀 제대로 작동하지 않습니다.

그리고 물론, 나는이 사업이 처음이기 때문에 모든 사람에게 잘못된 점을 찾을 수 없습니다. 누구든지 그것을 파악하고 도움을 줄 시간이 있다면 나는 매우 감사 할 것입니다.
파일:
MyIndi.mq4  54 kb
MyIndi_2.mq4  38 kb
 
Сергей :

내 문맹을 용서하십시오.


MultiTimeFrames의 MyIndi 1 MultiCurrency. 하단에는 구매 포인트 수가 표시됩니다.

MyIndi ​2 1번과 동일하지만 초과분은 제거하였습니다. 아래에 추가된 데이터 - 이는 다양한 기간 동안의 분당 평균 가격 변동입니다.

MyIndi 3 다중 통화. 교대 근무가 있는 한 MA를 기반으로 합니다. 지표의 차이에 도달하면 MA는 "주의!"를 표시합니다.


(어떤 이유로) JPY 차트에 첨부하면 세 가지 모두 올바르게 작동하지 않습니다. MyIndi ​3는 코드가 매우 단순해도 전혀 제대로 작동하지 않습니다.

그리고 물론, 나는이 사업이 처음이기 때문에 모든 사람에게 잘못된 점을 찾을 수 없습니다. 누구든지 그것을 파악하고 도움을 줄 시간이 있다면 나는 매우 감사 할 것입니다.

" Point "를 보면 JPY가 다릅니다. MarketInfo를 사용합니다. 예를 들어 double EUR_point=MarketInfo("EURUSD",MODE_POINT);

 
Nauris Zukas :

"Point"를 보면 JPY가 다릅니다. MarketInfo를 사용합니다. 예를 들어 double EUR_point=MarketInfo("EURUSD",MODE_POINT);

감사합니다 노력하겠습니다! 이것이 문제라는 생각은 들었지만 방법을 몰랐습니다.


도움이 되었습니다! 고마워요, 친절한 사람! =)

처음에 추가했습니다

       double USD_point= MarketInfo ( "EURUSD" , MODE_POINT );
       double JPY_point= MarketInfo ( "USDJPY" , MODE_POINT ); 

그리고 내가 처리하는 쌍(JPY 유무에 관계없이)에 따라 하나 또는 다른 변수를 사용했습니다.

 
Nauris Zukas :

"Point"를 보면 JPY가 다릅니다. MarketInfo를 사용합니다. 예를 들어 double EUR_point=MarketInfo("EURUSD",MODE_POINT);

바로 낫습니다

 Point
SymbolInfoDouble ( Symbol (), SYMBOL_POINT )
 
Vitaly Muzichenko :

바로 낫습니다


내가 이해하는 한 @Nauris Zukas 가 제안한 옵션은 다중 통화에 적합하며 적어도 저에게는 효과가 있었습니다.

그리고 귀하의 옵션은 단일 통화에 더 좋습니다. 첨부된 차트에서 데이터를 가져옵니다.