경고를 몇 초 지연 - 페이지 5

 
안녕하세요 여러분 , 저는 Gum Rai 에게 사과해야 합니다. 오늘 아침 조용하고 오픈마켓 당신의 코드를 입력했고 IT WORKS !!!!
저번 처럼 입력 같아서 뭐가 잘못 되었는지 이해 가 되지 않았지만 , 확실히 내가 잘못 하고 있는 것입 니다 . 실례합니다 , 검라이 . 당신은 훌륭합니다 !!!

안녕하세요 , 마시모 입니다.


 int start()
{
   static datetime BarStart= 0 ;
   static bool check= false ;
     if (BarStart!=Time[ 0 ])
     {
      BarStart=Time[ 0 ];
      check= true ;
     }
   if (check && TimeCurrent ()>=Time[ 0 ]+ 3 )
     {
      check= false ;
       //Check Condition
    

//_________________________________

/*void OnTimer(){
{
if(Bars!=prev_bars) current_candle_alert_been=false;
prev_bars=Bars;

if(current_candle_alert_been) return;
if(TimeLocal()-time_dif<Time[0]+seconds) return;
current_candle_alert_been=true;
 */     
       //Indicator Buffer 1
       if ( iRSI ( NULL , PERIOD_CURRENT , Period1, PRICE_CLOSE , 0 ) < 30
      
      )
        {
         Buffer1[ 0 ] = Low[ 0 ] - iATR ( NULL , PERIOD_CURRENT , 14 , 0 ); //Set indicator value at Candlestick Low - Average True Range
         if ( 0 == 0 && Time[ 0 ] != time_alert) { myAlert( "indicator" , "Buy" ); time_alert = Time[ 0 ]; } //Instant alert, only once per bar
        }
       else
        {
         Buffer1[ 0 ] = 0 ;
        }
       //Indicator Buffer 2
       if ( iRSI ( NULL , PERIOD_CURRENT , Period1, PRICE_CLOSE , 0 ) > 70
     
      )
        {
         Buffer2[ 0 ] = High[ 0 ] + iATR ( NULL , PERIOD_CURRENT , 14 , 0 ); //Set indicator value at Candlestick High + Average True Range
         if ( 0 == 0 && Time[ 0 ] != time_alert) { myAlert( "indicator" , "Sell" ); time_alert = Time[ 0 ]; } //Instant alert, only once per bar
        }
       else
        {
         Buffer2[ 0 ] = 0 ;
        }
     }
      
return ( 0 );
}
 //-----------------------------------------------------------------------------------------------------------------------------


 

걱정 마,

해결되셨다니 그저 기쁩니다

 
GumRai : 하지만 당신이 말하는 바는 차트에 이전 데이터를 추가하면 막대가 증가한다는 것입니다. 즉, 이전 막대를 추가하면 막대에서 반환되는 값이 증가하므로 Time[] 대신 막대를 사용하면 새 막대가 없는 경우에도 새 막대를 감지하게 됩니다.

정확히.

표시기는 새로운 바코드를 사용하지 않습니다. 그들은 rate_totalprevious_calculated 또는 BarsIndicatorCounted() 를 사용하여 새로 추가된 이전 데이터를 다시 계산합니다.

EA는 Time[0] 새 바코드를 사용하여 새 막대를 감지합니다.

일일 예: 목요일=[1] 금요일=[0] 막대=2

그런 다음 기록이 추가됩니다 . 화요일=[3], 수요일=[2] 목요일=[1] Friday=[0] 막대가 4로 변경되었지만 요일은 여전히 금요일입니다. 새 날이 없습니다 .

막대가 신뢰할 수 없음(새로 고침/재연결이 차트의 막대 수를 변경할 수 있음) 볼륨이 신뢰할 수 없음(눈금 누락) 항상 시간을 사용하십시오. 새 양초 - MQL4 forum
 
WHRoeder :

정확히.

표시기는 새로운 바코드를 사용하지 않습니다. 그들은 rate_totalprevious_calculated 또는 BarsIndicatorCounted() 를 사용하여 새로 추가된 이전 데이터를 다시 계산합니다.

EA는 Time[0] 새 바코드를 사용하여 새 막대를 감지합니다.

일일 예: 목요일=[1] 금요일=[0] 막대=2

그런 다음 기록이 추가됩니다 . 화요일=[3], 수요일=[2] 목요일=[1] Friday=[0] 막대가 4로 변경되었지만 요일은 여전히 금요일입니다. 새 날이 없습니다 .


물론이죠. 당신은 또 틀렸다. 새로운 날이 없습니다. 그러나 새로운 막대 데이터 요일이 있으며 지표 또는 EA의 모든 데이터를 다시 계산해야 합니다.

 

이 스레드가 오래되었다는 것을 알고 있지만 첨부된 표시기를 확인 하는 데 도움을 주실 수 있습니까? 이벤트가 발생하기 90초 전에 화살표가 나타나길 원합니다. 나는 수많은 솔루션을 시도했지만 제대로 이해하지 못하는 것 같습니다. 코드 자체를 붙여넣었지만 64000 이상입니다.

https://pastebin.com/XSHR9ZvH


감사해요

파일:
 
Ibiso Irumudomon : 이벤트가 발생하기 90초 전에 화살표가 나타나길 원합니다.
우리 모두도 마찬가지입니다. 여기에는 마음의 독자가 없고 우리의 수정 구슬은 금이 갔습니다. 시장이 신호를 생성할 만큼 충분히 움직일 때까지 신호가 없습니다 .