코딩 도움말 - 페이지 747

 
이 화면이 내가 원하는 것을 정확히 보여주기를 바랍니다 :)
파일:
 
skyler1234321 :
이 화면이 내가 원하는 것을 정확히 보여주기를 바랍니다 :)

HighLowCandle > 0을 사용하는 경우 닫힌 양초에서 축약됩니다.

UseBarDirection을 true로 설정하고 확인 하십시오.

 

예 설정에 있습니다. 내가 테스트 한 설정이 있습니다.

코드에 문제가 있을 수 있습니다. 내부를 확인해 주시겠습니까?

파일:
2.PNG  25 kb
 
cja :

차트 표시를 위해 MT5 지표 데이터에 액세스하는 간단한 방법이 있습니까? 처음에 MT5가 처음 나왔을 때 코드가 단순한 지표에 대해 상당히 복잡했다는 것을 알고 있으며 최신 버전의 MT5에서는 무언가가 변경되었을 수 있기를 바랍니다.

예를 들어 MT4를 사용하여 차트 개체 표시에 MA 십자형을 표시하려면

이중 느린_MA = iMA(Symbol(),0,100,0,MA_MODE,MA_PRICE,0);

더블 fast_MA = iMA(Symbol(),0,35,0,MA_MODE,MA_PRICE,0);

if (ma_fast > ma_slow){ 열 = clrLime;}

if (ma_fast < ma_slow) {col = clrRed;}

그렇지 않으면 {col = clrGray;}


MT5에 간단한 동등물이 있습니까? 아니면 이 정보에 액세스하려면 말할 수 없는 코드 줄을 작성해야 합니까?

안녕 차

먼저 2017년에 TSD를 찾아주셔서 감사합니다. 그럼 tsd를 방문하는 것은 매우 드물지만 매우 나이가 많고 선배이자 전문가이시므로 새해 복 많이 받으세요 :)

문안 인사

 

이 Trailing with Step 루틴을 변경하려고 합니다.
매수/매도 입구가 아닌 손절매에서 움직여야 합니다...

예: (BUY 작업)

손절매: 250(포인트)
Traling:150(포인트)
TralingStep: 50(포인트)
============

구매 입장=> 1000
손절매=>750 (=1000-250)

=================
첫 번째 가격 변경) 가격 이동: 1150

(필요없어요.. ;-( )
후행은 내 손절매를 "buy_entrance" =>1000으로 이동합니다.

(하지만 난 이게 필요해)
후행은 내 손절매를 => 800(=StopLoss+Trailingstep)으로 이동해야 합니다.

두 번째 가격 변경) 가격 이동: 1300
후행 쇼 이동=> 950 (=StopLoss+Trailingstep)


실제 코드는 후행 및 후행 단계를 사용하지만 수정해야 합니다...
(가격 이동) 후행 포인트에 도달하고 후행 단계를 사용하여 정지 손실 을 이동하지만 실제 코드
정지 손실을 작업의 진입점으로 이동합니다(나는 이것을 원하지 않습니다).

난 필요해:

매수가 열릴 때: 후행에 도달하면 실제 손절매에서 후행 단계를 빼야 합니다. (NewStopLoss = LastStoploss - TrailingStep)
매도가 열릴 때: 후행에 도달하면 실제 손절매에서 후행 단계를 추가해야 합니다. (NewStopLoss = LastStoploss +TrailingStep)

#include <Trade/Trade.mqh>
#include <Trade/SymbolInfo.mqh>
#include <Trade/PositionInfo.mqh>
CTrade Trade;
CSymbolInfo Sym;
CPositionInfo Pos;

int
 Trailing =  150 ;
int  TrailingStep =  25 ;

void  fSimpleTrailingStep(){    //mt5
    if (Trailing<= 0 ){
       return ;
   }         
    if (!Pos.Select( _Symbol )){
       return ;
   }         
    if (!Sym. RefreshRates ()){
       return ;  
   }   
    double  nsl,tmsl,psl,newstop;  
    switch (Pos.PositionType()){
       case   POSITION_TYPE_BUY :
         nsl=Sym.NormalizePrice(Sym. Bid ()- _Point *Trailing);
             if (nsl>=Sym.NormalizePrice(Pos.PriceOpen())){
                //if(nsl>Sym.NormalizePrice(Pos.StopLoss())){
                if (nsl>=Sym.NormalizePrice(Pos.StopLoss()+ _Point *TrailingStep)){   //////////////
                   //tmsl=Sym.NormalizePrice(Sym.Bid()-_Point*Sym.StopsLevel());
                   tmsl=Sym.NormalizePrice(Sym. Bid ()- _Point *Sym.StopsLevel());
                      if (nsl<tmsl){
                         //Trade.PositionModify(_Symbol,nsl,Pos.TakeProfit());
                        newstop=Sym.NormalizePrice(Pos.StopLoss()+ _Point *TrailingStep);
                        Trade.PositionModify( _Symbol ,newstop,Pos.TakeProfit());
                         Print  ( "(BUY) Trailing :" +Pos.StopLoss());
                     }
               }
            }
       break ;
       case   POSITION_TYPE_SELL :
         nsl=Sym.NormalizePrice(Sym. Ask ()+ _Point *Trailing);
             //if(nsl<=Sym.NormalizePrice(Pos.PriceOpen())){             
             if (nsl<=Sym.NormalizePrice(Pos.PriceOpen())- _Point *TrailingStep){    //////////////
               psl=Sym.NormalizePrice(Pos.StopLoss());
                   if (nsl<psl || psl== 0 ){
                     tmsl=Sym.NormalizePrice(Sym. Ask ()+ _Point *Sym.StopsLevel());
                         if (nsl>tmsl){
                           newstop=Sym.NormalizePrice(Pos.StopLoss()- _Point *TrailingStep);
                            //Trade.PositionModify(_Symbol,nsl,Pos.TakeProfit());
                           Trade.PositionModify( _Symbol ,newstop,Pos.TakeProfit());
                            Print  ( "(SELL) Trailing :" +Pos.StopLoss());
                        }
                  }
            }      
       break ;
   }
}
 
baraozemo :

이 Trailing with Step 루틴을 변경하려고 합니다.
매수/매도 입구가 아닌 손절매에서 움직여야 합니다...

예: (BUY 작업)

손절매: 250(포인트)
Traling:150(포인트)
TralingStep: 50(포인트)
============

구매 입장=> 1000
손절매=>750 (=1000-250)

=================
첫 번째 가격 변경) 가격 이동: 1150

(필요없어요.. ;-( )
후행은 내 손절매를 "buy_entrance" =>1000으로 이동합니다.

(하지만 난 이게 필요해)
후행은 내 손절매를 => 800(=StopLoss+Trailingstep)으로 이동해야 합니다.

두 번째 가격 변경) 가격 이동: 1300
후행 쇼 이동=> 950 (=StopLoss+Trailingstep)


실제 코드는 후행 및 후행 단계를 사용하지만 수정해야 합니다...
(가격 이동) 후행 포인트에 도달하고 후행 단계를 사용하여 정지 손실을 이동하지만 실제 코드
정지 손실을 작업의 진입점으로 이동합니다(나는 이것을 원하지 않습니다).

난 필요해:

매수가 열릴 때: 후행에 도달하면 실제 손절매에서 후행 단계를 빼야 합니다. (NewStopLoss = LastStoploss - TrailingStep)
매도가 열릴 때: 후행에 도달하면 실제 손절매에서 후행 단계를 추가해야 합니다. (NewStopLoss = LastStoploss +TrailingStep)

#include <Trade/Trade.mqh>
#include <Trade/SymbolInfo.mqh>
#include <Trade/PositionInfo.mqh>
CTrade Trade;
CSymbolInfo Sym;
CPositionInfo Pos;

int
 Trailing =  150 ;
int  TrailingStep =  25 ;

void  fSimpleTrailingStep(){    //mt5
    if (Trailing<= 0 ){
       return ;
   }         
    if (!Pos.Select( _Symbol )){
       return ;
   }         
    if (!Sym. RefreshRates ()){
       return ;  
   }   
    double  nsl,tmsl,psl,newstop;  
    switch (Pos.PositionType()){
       case   POSITION_TYPE_BUY :
         nsl=Sym.NormalizePrice(Sym. Bid ()- _Point *Trailing);
             if (nsl>=Sym.NormalizePrice(Pos.PriceOpen())){
                //if(nsl>Sym.NormalizePrice(Pos.StopLoss())){
                if (nsl>=Sym.NormalizePrice(Pos.StopLoss()+ _Point *TrailingStep)){   //////////////
                   //tmsl=Sym.NormalizePrice(Sym.Bid()-_Point*Sym.StopsLevel());
                   tmsl=Sym.NormalizePrice(Sym. Bid ()- _Point *Sym.StopsLevel());
                      if (nsl<tmsl){
                         //Trade.PositionModify(_Symbol,nsl,Pos.TakeProfit());
                        newstop=Sym.NormalizePrice(Pos.StopLoss()+ _Point *TrailingStep);
                        Trade.PositionModify( _Symbol ,newstop,Pos.TakeProfit());
                         Print  ( "(BUY) Trailing :" +Pos.StopLoss());
                     }
               }
            }
       break ;
       case   POSITION_TYPE_SELL :
         nsl=Sym.NormalizePrice(Sym. Ask ()+ _Point *Trailing);
             //if(nsl<=Sym.NormalizePrice(Pos.PriceOpen())){             
             if (nsl<=Sym.NormalizePrice(Pos.PriceOpen())- _Point *TrailingStep){    //////////////
               psl=Sym.NormalizePrice(Pos.StopLoss());
                   if (nsl<psl || psl== 0 ){
                     tmsl=Sym.NormalizePrice(Sym. Ask ()+ _Point *Sym.StopsLevel());
                         if (nsl>tmsl){
                           newstop=Sym.NormalizePrice(Pos.StopLoss()- _Point *TrailingStep);
                            //Trade.PositionModify(_Symbol,nsl,Pos.TakeProfit());
                           Trade.PositionModify( _Symbol ,newstop,Pos.TakeProfit());
                            Print  ( "(SELL) Trailing :" +Pos.StopLoss());
                        }
                  }
            }      
       break ;
   }
}
초기 시작은 항상 초기 매수/매도 시작이어야 합니다(사용 가능한 다른 기준이 없음).
 

친애하는 MLADEN

Timmy와 저는 "average - mtf - alerts 8.7"을 기반으로 추세 변화에 대한 기본 판매/구매가 포함된 간단한 EA로 재생(복사/붙여넣기)하려고 합니다. 우리 둘 다 코딩 문제에서 0이기 때문에 도움말 및 안내, 방법 이 평균 버전에 대한 코딩(icustom)

문안 인사



     double Averages_trend_current  = iCustom ( NULL , 0 , "averages - mtf - alerts  8.7" , PERIOD_CURRENT ,AveragePeriod,AveragePrice,AverageMethod,DoubleSmoothedAverage,AdaptiveAverage,FilterPeriod,FilterOn,BarToUse);

     double Averages_trend_previous = iCustom ( NULL , 0 , "averages - mtf - alerts  8.7" , PERIOD_CURRENT ,AveragePeriod,AveragePrice,AverageMethod,DoubleSmoothedAverage,AdaptiveAverage,FilterPeriod,FilterOn,BarToUse+ 1 );


 
mntiwana :

친애하는 MLADEN

Timmy와 저는 "average - mtf - alerts 8.7"을 기반으로 추세 변화에 대한 기본 판매/구매가 포함된 간단한 EA로 재생(복사/붙여넣기)하려고 합니다. 우리 둘 다 코딩 문제에서 0이기 때문에 도움말 및 안내, 방법 이 평균 버전에 대한 코딩(icustom)

문안 인사



     double Averages_trend_current  = iCustom ( NULL , 0 , "averages - mtf - alerts  8.7" , PERIOD_CURRENT ,AveragePeriod,AveragePrice,AverageMethod,DoubleSmoothedAverage,AdaptiveAverage,FilterPeriod,FilterOn,BarToUse);

     double Averages_trend_previous = iCustom ( NULL , 0 , "averages - mtf - alerts  8.7" , PERIOD_CURRENT ,AveragePeriod,AveragePrice,AverageMethod,DoubleSmoothedAverage,AdaptiveAverage,FilterPeriod,FilterOn,BarToUse+ 1 );


버퍼에 문제가 있습니다. 버퍼 2를 매수에 사용하고 버퍼 3과 4를 매도에 사용했지만 모든 것이 항상 실행되고 버퍼 2를 매수에 사용하고 버퍼 3을 매도에 사용하려고 했지만 동일한 일이 발생했습니다. .
 
timmyhanke :
버퍼에 문제가 있습니다. 버퍼 2를 매수에 사용하고 버퍼 3과 4를 매도에 사용했지만 모든 것이 항상 트리거되고 버퍼 2를 매수에 사용하고 버퍼 3을 매도에 사용하려고 했지만 동일한 일이 발생했습니다. .

버퍼에는 이상이 없습니다. 버퍼 9:1 추세 상승, -1 추세 하락 사용

 

친애하는 믈라덴 씨,


내 전략 거래를 위한 히스토그램 표시기가 필요합니다. 지금은 XB4 표시기와 Bandit 전략 표시기를 사용합니다. 그러나 그들은 이메일이나 내 안드로이드 MT4로 보내는 경고 및 알림 이 없습니다.

당신은 안드로이드 모바일 전화로 보내는 경고 보내기 이메일과 알림이 있는 표시기 XB4d ndicator를 수정했습니까? 히스토그램이 첫 번째 막대에서 파란색에서 빨간색으로 또는 빨간색에서 파란색으로 변경되는 경우.

및 변화하는 추세의 첫 번째 색상인 파란색에서 빨간색 또는 빨간색에서 파란색으로 색상을 변경하는 Bandid 시스템 표시기의 히스토그램 추세 세션.

Mladen 씨에 대해 이 지표에 대해 저를 도와주시겠습니까?




문안 인사,

사무엘

파일:
bandit.PNG  56 kb
XB4.PNG  46 kb