[경고, 주제 닫힘!] 포럼을 어지럽히지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 당신 없이는 어디에도 없습니다. - 페이지 197

 

설명하다. 나는 전혀 이해하지 못한다. 왜 조건

int 테이크프로핏 = 62;

pp = MarketInfo (OrderSymbol(), MODE_POINT);

if(OrderTakeProfit() - OrderOpenPrice() < 이익실현*pp )

사실처럼 작동합니까? 두 부분은 동일하지만!! 다음에서 알 수 있듯이.

2009.08.22 18:50:31 1999.10.11 23:43 Delta EURUSD,M1: OrderTakeProfit() - OrderOpenPrice() = 0.0062 Takeprofit*pp = 0.0062

고맙습니다!

 

실수로 작업하기 때문에 0.0062는 실제로 0.0061999와 0.0062001이 될 수 있음을 알아야 합니다.

정규화를 사용합니다.

 
OneDepo писал(а) >>

실수로 작업하기 때문에 0.0062는 실제로 0.0061999와 0.0062001이 될 수 있음을 알아야 합니다.

정규화를 사용합니다.

Takeprofit*pp을 정상화하려고 했지만 작동하지 않았습니다. 방정식의 양변을 정규화해야 합니까?

 
001 >> :

Takeprofit*pp을 정상화하려고 했지만 작동하지 않았습니다. 방정식 (스페인 부등식 )의 양쪽을 정규화해야 합니까?

네.

두 번째 옵션은 int 유형으로 작업하는 것입니다. 예를 들면 다음과 같습니다.

 int temp = 0.5 + ( OrderTakeProfit ( ) - OrderOpenPrice ( ) ) / pp ;
if ( temp < Takeprofit )
 
OneDepo писал(а) >>

네.

두 번째 옵션은 int 유형으로 작업하는 것입니다. 예를 들면 다음과 같습니다.

고맙습니다!

 

안녕하세요!

조건에 따라 표시선의 색상을 변경하는 방법 - 예를 들어 막대의 다른 범위가 다른 색상을 갖도록 하려면?

이 작업을 수행해야 하는 SetIndexStyle 함수 는 색상 설정이나 선 두께를 처리하지 않습니다 . 그림 참조

아래 예제 코드를 참조하십시오.

각 단계는 색상과 두께가 달라야 하며 모두 빨간색이고 두께 2입니다.

 //+------------------------------------------------------------------+
//|                                                       MinMax.mq4 |
//|                      Copyright © 2009, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link       "http://www.metaquotes.net"

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Gray

//---- buffers
double ExtMapBuffer1 [ ] ;
double Val ;
int ExtCountedBars = 0 ;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init ( )
   {
//---- indicators
   SetIndexStyle ( 0 , DRAW_LINE , STYLE_SOLID , 2 , Brown ) ;
   SetIndexBuffer ( 0 , ExtMapBuffer1 ) ;
   Val = Close [ Bars - 1 ] ;
  
//----
   return ( 0 ) ;
   }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit ( )
   {
//----
   
//----
   return ( 0 ) ;
   }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start ( )
   {
   

   if ( Bars < = 100 ) return ( 0 ) ;
   ExtCountedBars = IndicatorCounted ( ) ;

   //---- check for possible errors
   if ( ExtCountedBars < 0 ) return ( - 1 ) ;
   if ( ExtCountedBars > 0 ) ExtCountedBars - - ;
   int     i , pos = Bars - ExtCountedBars - 1 ; 
   Comment ( Bars , " " , ExtCountedBars , " " , pos ) ; 
//---- last counted bar will be recounted
   
//----

   while ( pos > = 0 ) {
        
         if ( pos < 100 & & pos > 0 )    { SetIndexStyle ( 0 , DRAW_LINE , STYLE_SOLID , 2 , Red ) ; Val = 1.45 ; }
         if ( pos < 200 & & pos > 100 ) { SetIndexStyle ( 0 , DRAW_LINE , STYLE_SOLID , 3 , Blue ) ; Val = 1.44 ; }
         if ( pos < 300 & & pos > 200 ) { SetIndexStyle ( 0 , DRAW_LINE , STYLE_SOLID , 4 , Yellow ) ; Val = 1.43 ; }
         if ( pos < 400 & & pos > 300 ) { SetIndexStyle ( 0 , DRAW_LINE , STYLE_SOLID , 5 , Magenta ) ; Val = 1.42 ; }
             
      ExtMapBuffer1 [ pos ] = Val ;
    
    pos - - ;
     }
   return ( 0 ) ;
   }
//+------------------------------------------------------------------+
 
stera писал(а) >>

안녕하세요!

조건에 따라 표시선의 색상을 변경하는 방법 - 예를 들어 막대의 다른 범위가 다른 색상을 갖도록 하려면?

이 작업을 수행해야 하는 SetIndexStyle 함수 는 색상 설정이나 선 두께를 처리하지 않습니다 . 그림 참조

아래 예제 코드를 참조하십시오.

각 단계는 색상과 두께가 달라야 하며 모두 빨간색이고 두께 2입니다.

각각 고유한 스타일과 색상이 있는 추가 버퍼 사용

 
Vinin >> :

각각 고유한 스타일과 색상이 있는 추가 버퍼 사용

비슷한 질문을 시작하고 공동의 노력으로 우리는 어쨌든 명확해야 하는 것을 알아냈습니다. :))

SetIndexStyle , 시작할 때 사용하면 정직하게 색상을 변경하지만 전체 버퍼의 색상을 한 번에 변경합니다. 즉, 현재 차트에서 버퍼(선)는 마지막으로 적용된 SetIndexStyle 에 해당하는 색상을 갖습니다.

 
stera писал(а) >>

안녕하세요!

표시선 색상을 변경하는 방법..

여기 봐 .

 
granit77 писал(а) >>

비슷한 질문을 시작하고 공동의 노력으로 우리는 어쨌든 명확해야 하는 것을 알아냈습니다. :))

SetIndexStyle , 시작할 때 사용하면 정직하게 색상을 변경하지만 전체 버퍼의 색상을 한 번에 변경합니다. 즉, 현재 차트에서 버퍼(선)는 마지막으로 적용된 SetIndexStyle 에 해당하는 색상을 갖습니다.

고마워요, granit77.

철저한 답변.
그런 생각이 들었지만 이런 기발한 발상이 이 기능에 담겼다는 것이 믿기지 않았다.

어떤 목적을 위해 전체 버퍼의 색상을 변경할 필요가 있을 수 있지만 다음을 수행하는 것이 더 실용적입니다.

표시기의 개별 섹션에 색상을 지정(및 기타 속성 변경)하기 위한 메커니즘입니다.

예를 들어 EasyLang이 있습니다.

개발자들에게 글을 쓰겠습니다.

MQL 기능에 대한 자세한 설명이 어딘가에 있습니까?

특정 매개변수의 동작에 대한 삽화가 있습니까?

그런 다음 모든 매개변수를 직접 테스트하거나 다른 사람의 예를 물어봐야 합니다.