[아카이브!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 2. - 페이지 400

 
Bihkul :

이 계정에서만 어드바이저가 작업할 계좌번호를 입력하는 스레드가 어디에 있는지 각각 알려주세요.

정수 시작()

{

if(계정번호()!=123) return(0);

당신의 도움에 미리 감사드립니다.

 

누군가 코드에서 이유를 설명할 수 있습니까?

int start() // 사양. 시작 기능
{
이중 프로시저=0;
정수 나; // 바 번호
double Minimum=Bid, // 최저 가격
최대=입찰가; // 최고가

for(i=0;i<=50-1;i++) // 0(!)에서 ..
{ // ..Quant_Bars-1(!)
if (Low[i]< Minimum) // If < 알려진 경우
최소=낮음[i]; // 그러면 최소값이 됩니다.
if (High[i]> Maximum) // If > 알려진 경우
최대=높음[i]; // 그러면 최대값이 됩니다.
}

이중 세레디나 = (최소 + 최대)/2;
proc=(최대-최소);
Comment("최대 가격==",최대,
"\n","최소 가격==",최소,
"\n","미드==",세레디나,
"\n","백분율=30",proc);
반품; // start()에서 종료

}

proc이 최대값에서 최소값을 뺀 값임에도 불구하고 proc은 300.0012로 판명되었습니다.

최대가 정확하고 최소가 정확하고 중간이 정확합니다.

????????

따라서 내가 하면 proc=2+2;

그런 다음 터미널은 304를 제공합니다 !!!!! 곤경에 처한 쇼?????

 
VOLDEMAR :

"\n","백분율 =30 ",proc);
반품; // start()에서 종료

따라서 내가 하면 proc=2+2;

그런 다음 터미널은 304를 제공합니다 !!!!! 곤경에 처한 쇼?????

즐거운 시간 보내세요 :)
 

테스터가 어드바이저를 최적화하지 않는 이유를 알려주세요

여러 입력 매개변수를 선택하고 최적화 확인란을 선택합니다... 최적화 시작을 누르면 빠르게 종료되고 1/1이 표시됩니다. 로그에는 최적화 중에 1개의 패스가 수행되었으며 1개의 결과는 중요하지 않은 것으로 버려야 한다고 표시됩니다.

5개의 다른 중개 터미널에서 시도했는데 내가 뭘 잘못하고 있는지 알려주세요. 미리 감사합니다.

 
모두에게 좋은 하루! 말해봐, 히스토리에 수익이 0보다 큰 주문이 나왔을 때 PlaySound를 만드는 것이 임무다. 분명히 if ((OrderCloseTime == 현재 시간 ) &&(OrderProfit > 0)) 와 비슷하지만 어떻게 쓰는지 알 수 없습니다(현재 시간과 마감 시간 비교). 플리즈 도움.
 
Pyro :
모두에게 좋은 하루! 말해봐, 히스토리에 수익이 0보다 큰 주문이 나왔을 때 PlaySound를 만드는 것이 임무다. 분명히 if ((OrderCloseTime == 현재 시간) &&(OrderProfit > 0)) 처럼 보이지만 어떻게 적어야 할지 모르겠습니다(현재 시간과 마감 시간 비교). 플리즈 도움.
 //ф-ция выдает время последнего закрытого ордера. при желании все действия можно провести здесь
datetime OrderCloseTime_() //void
  {
   datetime Time_= 0 ;
   for ( int i= 0 ;i<OrdersHistoryTotal();i++)
     {
       if ( OrderSelect (i,SELECT_BY_POS,MODE_HISTORY)==false) break ;
       if (OrderSymbol()== Symbol ())   //if(OrderProfit()>0)
        {
         if (OrderCloseTime()>Time_)Time_=OrderCloseTime();

        }
     }
     
   //if(Time_==Time[0]) PlaySound(....);  
   return (Time_); //
 }
 

알다시피, 나는 여기에서 고문의 첫 번째 장의 초기 스케치를 업데이트했습니다. 그래서 컴파일러는 대괄호가 그를 위해 균형이 맞지 않는다고 맹세합니다. 비록 내가 영어를 모르지만 그는 이렇게 맹세합니다.

'\end_of_program' - 끝에 대괄호 '}' 예상 C:\MF Trader 4\documents\experts\for avalanches.mq4 (59, 1)

'\end_of_program' - 불균형 왼쪽 괄호 C:\MF Trader 4\documents\experts\for avalanches.mq4 (59, 1)

모든 것이 잘 될 것입니다. 브래킷은 균형을 이루고 있습니다. 나는 조각으로 정확하게 세었습니다 !! 여러 번. 금요일에는 10번, 오늘은 3번.

여러분, 도와주세요!! 내가 바보인지 아니면 더 깊이 묻힌 문제가 있는지 제발!

코드

 //+------------------------------------------------------------------+
//|                                                    для лавин.mq4 |
//|                      Copyright © 2011, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, MetaQuotes Software Corp."
#property link       "http://www.metaquotes.net"
extern double stoploss= 0 ; extern double takeprofit= 20 ; extern int otstup= 20 ; extern datetime expiration= 0 ;

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
 int tiket,tikett; double volume= 0.1 ; int i= 0 ,R1= 0 ,R2= 0 ,A= 1 ; double price= PRICE_OPEN ;
   //  R1=((PRICE_OPEN- stoploss*Point)*stoploss)/stoploss;R2=((PRICE_OPEN+ stoploss*Point)*stoploss)/stoploss;
     
     
int start()
  {       int X,Y; double price=(Ask+Bid)/ 2 ;            
//----
       Alert ( "OrdersTotal()" , OrdersTotal ());

if (OrderSymbol()== Symbol ()&&OrderMagicNumber( )== 1000 {
 for ( int i= OrdersTotal ();i== 0 ;i--){
OrderSelect (i,SELECT_BY_POS ); if (OrderType( )!=OP_BUYSTOP){X++}}}; if (X== 0 ){


   tiket= OrderSend ( Symbol (), OP_BUYSTOP,  volume*A, price +otstup* Point , Point * 3 , R1, price+takeprofit* Point +otstup* Point , "OP_BUYSTOP" , 1000 ,  expiration, Red ); 
   Alert ( "OP_BUYSTOP" , GetLastError ( )); }
   
if ( OrderMagicNumber( )== 2000 &&OrderSymbol()== Symbol ()&& OrderType( ) !=OP_SELLSTOP) { 
   tikett= OrderSend ( Symbol (), OP_SELLSTOP,  volume*A, price -otstup* Point , Point * 3 ,R2, price-takeprofit* Point -otstup* Point , "OP_SELLSTOP" , 2000 ,  expiration, C'0,128,255' );
     Alert ( "OP_SELLSTOP" , GetLastError ( )); 
    }       
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
 
if(OrderSymbol()==Symbol()&&OrderMagicNumber( )==1000ТУТ надо закрыть скобку условия{


{X++;точка с запятой}
 
주님, 아마도 세미콜론일 것입니다. 대괄호는 균형이 맞고 정확히 8입니다. 지금 바로 수정하겠습니다.
 

아니요, 세미콜론은 물론 이동했습니다. 대괄호 안에 이렇게 맹세합니다.

'\end_of_program' - 불균형 왼쪽 괄호 C:\MF Trader 4\documents\experts\for avalanches.mq4 (59, 1)

사유: