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

 
Andrei01 :
스케일 계산을 위해 차트의 수직 스케일에서 가격 제한을 어떻게 든 찾을 수 있습니까(기기 가격이 아니라 F8에 위치)?

더블윈도우가격최소 ( 정수 인덱스=0)
더블윈도우가격최대 ( 정수 인덱스=0)
 
Top2n :
안녕하세요 여러분, 테스터에서 Expert Advisor를 실행하고 있지만 포지션을 열지 않습니다. 로그에 EURUSD,M5: OrderSend error 131이 표시됩니다. 모든 것이 로트에 문제가 없습니다. 일하고 일하고 처음으로 멈춘 것이 아닙니다. 누구든지 이 문제가 발생하면 알려주십시오. 미리 감사합니다


아마도 귀하의 로트가 정규화되지 않았을 것입니다. 다음을 사용하여 정상으로 되돌리십시오.
더블 NormalizeDouble ( 이중 값, 정수 숫자)
 
zhuki :
아마도 귀하의 로트가 정규화되지 않았을 것입니다. 다음을 사용하여 정상으로 되돌리십시오.
더블 NormalizeDouble ( 이중 값, 정수 숫자)
사실 제 기억력이 도움이 된다면 그는 로트를 정규화하는 기성품 기능을 가지고 있습니다 ...
DC의 모든 가능한 제한을 고려하여 ...
그것은 그가 그것을 사용하지 않는 경우에만 ... 그렇다면 - OH ... :)
 
zhuki :

더블윈도우가격최소 ( 정수 인덱스=0)
더블윈도우가격최대 ( 정수 인덱스=0)
고맙습니다. 프로그래밍 방식으로 변경할 수 있는 방법이 있습니까?
 

안녕하세요 포럼입니다.

그런 다음 입구 아래의 할아버지가 나에게 제안했습니다 - Honey 구세주 Sedne. 모두 즐거운 휴일 되세요.

그리고 저는 ... Drknn 그릿 표시기 판독값 을 처리할 수 있습니다.

주어진 기간 동안의 합계 A/D와 OBV의 합계를 만든 다음 서로 나눌 수 있습니까(분자의 OBV)

분모에서 A / D + 계수가 설정에 출력됩니다.

가운데가 0이고 테두리가 떠 있습니다.

합계는 합계가 아닙니다. 각 움직임은 절대적인 크기입니다.

그리고 나는 당신에게 유대인 스프레드를 줄 것입니다

 
코니치와 여러분! 매수 또는 매도 조건에서 테이크가 다른 3개의 주문이 열리고 양초에서 한 번만 열리도록 하려면 어떻게 해야 합니까? 미리 아리가토!
 
Maniac :
코니치와 여러분! 매수 또는 매도 조건에서 테이크가 다른 3개의 주문이 열리고 양초에서 한 번만 열리도록 하려면 어떻게 해야 합니까? 미리 아리가토!
다른 테이크를 사용하여 3개의 전송 명령을 수행하거나 이 기능을 최대 3개(for 또는 while)까지 반복합니다. 각 반복에는 고유한 테이크가 있습니다.
 
sanyooooook :
다른 테이크를 사용하여 3개의 전송 명령을 수행하거나 이 기능을 최대 3개(for 또는 while)까지 반복합니다. 각 반복에는 고유한 테이크가 있습니다.


다른 테이크를 사용하여 3번의 주문을 보내십시오 - 첫 번째 주문을 3번 엽니다 :(

이 함수를 최대 3개(for 또는 while)까지 반복합니다. 각 반복에는 고유한 테이크가 있습니다. - 많은 첫 번째 주문을 엽니다.

어렵지 않다면 어떻게 하는지 예를 들어 보여주시겠습니까?

 
Maniac :


다른 테이크를 사용하여 3번의 주문을 보내십시오 - 첫 번째 주문을 3번 엽니다 :(

이 함수를 최대 3(for 또는 while)까지 반복합니다. 각 반복에는 고유한 테이크가 있습니다. 많은 첫 번째 주문을 엽니다.

어렵지 않다면 어떻게 하는지 예를 들어 보여주시겠습니까?

미결 주문 수가 있습니까?
 
sanyooooook :
미결 주문 수가 있습니까?
 extern double TakeProfit = 35 ;
extern double StopLoss   = 25 ;
extern double Lots       = 0.1 ;

int NumberOfBarOpenLastPos( string sym= "" , int tf= 0 , int op=- 1 , int mn=- 1 ) {
  datetime oot;
  int      i, k= OrdersTotal ();
 
  if (sym== "" ) sym= Symbol ();
  for (i= 0 ; i<k; i++) {
    if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sym) {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op< 0 || OrderType()==op) {
            if (mn< 0 || OrderMagicNumber()==mn) {
              if (oot<OrderOpenTime()) oot=OrderOpenTime();
            }
          }
        }
      }
    }
  }
  return (iBarShift(sym, tf, oot, True));
}
int NumberOfBarCloseLastPos( string sy= "0" , int tf= 0 , int op=- 1 , int mn=- 1 ) {
  datetime t;
  int      i, k=OrdersHistoryTotal();

  if (sy== "" || sy== "0" ) sy= Symbol ();
  for (i= 0 ; i<k; i++) {
    if ( OrderSelect (i, SELECT_BY_POS, MODE_HISTORY)) {
      if (OrderSymbol()==sy) {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op< 0 || OrderType()==op) {
            if (mn< 0 || OrderMagicNumber()==mn) {
              if (t<OrderCloseTime()) t=OrderCloseTime();
            }
          }
        }
      }
    }
  }
  return (iBarShift(sy, tf, t, True));
}
int start()
  {
   
   int ticket;
   if ( Bars < 100 )
     {
      Print ( "bars less than 100" );
      return ( 0 );  
     }
   if (TakeProfit< 10 )
     {
      Print ( "TakeProfit less than 10" );
      return ( 0 );
     }
   if ((NumberOfBarOpenLastPos()> 0 ||NumberOfBarOpenLastPos()==- 1 )&&(NumberOfBarCloseLastPos()> 0 ||NumberOfBarCloseLastPos()==- 1 ))
     {
      
      if (AccountFreeMargin()<( 1000 *Lots))
        {
         Print ( "We have no money. Free Margin = " , AccountFreeMargin());
         return ( 0 );  
        }
      
      if (Bid>High[ 1 ])
        {
         ticket= OrderSend ( Symbol (),OP_BUY,Lots,Ask, 3 ,Ask-StopLoss* Point ,Ask+TakeProfit* Point , "test" , 16384 , 0 , Green );
         if (ticket> 0 )
           {
            if ( OrderSelect (ticket,SELECT_BY_TICKET,MODE_TRADES)) Print ( "BUY order opened : " ,OrderOpenPrice());
           }
         else Print ( "Error opening BUY order : " , GetLastError ()); 
         return ( 0 ); 
        }
     
      if (Bid<Low[ 1 ])
        {
         ticket= OrderSend ( Symbol (),OP_SELL,Lots,Bid, 3 ,Bid+StopLoss* Point ,Bid-TakeProfit* Point , "test" , 16384 , 0 , Red );
         if (ticket> 0 )
           {
            if ( OrderSelect (ticket,SELECT_BY_TICKET,MODE_TRADES)) Print ( "SELL order opened : " ,OrderOpenPrice());
           }
         else Print ( "Error opening SELL order : " , GetLastError ()); 
         return ( 0 );  
        }
      return ( 0 );
     }

  }


다음은 어드바이저 코드입니다. 필요하다:

1) 그는 스탑 25로 한 번에 하나가 아니라 세 개의 거래를 열고 15, 35, 50을 가져갑니다.

2) 두 번째 주문이 테이크(35)로 마감된 후 마지막 포지션(테이크 50)이 손익분기점으로 전환되었습니다.