[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 252

 
O vídeo é super!
 
//+------------------------------------------------------------------+
//|                                          поиск вульфа Димона.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_chart_window
#property indicator_buffers 3
#property indicator_color1 Green
#property indicator_color2 Red
#property indicator_color3 DarkBlue
#property show_inputs
#import "user32.dll"
        int PostMessageA(int hWnd,int Msg,int wParam,int lParam);
        void keybd_event(int bVk,int bScan,int dwFlags,int dwExtraInfo);
#import
#define WM_COMMAND 0x0111
double ВерхняячертаBuffer1[];
double НижняячертаBuffer2[];
double СинняячертаBuffer3[];
 double вершина; 
 double основание_первого_снижения;
 double начало;
 double вершина_волны_3;
 extern int T=4,K=200;
 int timeframe, start ;
 int бар_вершина ;
 int бар_основание_первого_снижения;
 int бар_начало;
 int pereklutsatel;
double naklon,linija2; 
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()

  {SetIndexStyle(0,DRAW_SECTION,STYLE_SOLID,2,CLR_NONE);//Alert ("SetIndexStyle ",GetLastError( ) );
  SetIndexBuffer(0,ВерхняячертаBuffer1);//Alert ("SetIndexBuffer ",GetLastError( ) );
   SetIndexEmptyValue(0,0.0);
   
   SetIndexStyle(1,DRAW_SECTION,STYLE_SOLID,2,CLR_NONE);//Alert ("SetIndexStyle ",GetLastError( ) );
  SetIndexBuffer(1,НижняячертаBuffer2);//Alert ("SetIndexBuffer ",GetLastError( ) ); 
   SetIndexEmptyValue(1,0.0);
   
   SetIndexStyle(2,DRAW_SECTION,STYLE_SOLID,T,CLR_NONE);//Alert ("SetIndexStyle ",GetLastError( ) );
  SetIndexBuffer(2,СинняячертаBuffer3);//Alert ("SetIndexBuffer ",GetLastError( ) ); 
   SetIndexEmptyValue(2,0.0);
//---- indicators




//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
   
   for ( int J=0;J<=49;J++){
//----

  // for(int i=Bars; i>=0;i--)
  int i=Bars;
      бар_вершина=iHighest( NULL,  timeframe, MODE_HIGH, K, start ) ;
       вершина =High[ бар_вершина ];
       бар_основание_первого_снижения=iLowest( NULL,  timeframe, MODE_LOW,NormalizeDouble ( бар_вершина/2,0), start ) ;
       основание_первого_снижения=Low[ бар_основание_первого_снижения ];
       бар_начало=iLowest( NULL,  timeframe, MODE_LOW,NormalizeDouble (бар_вершина*1.5,0), бар_вершина ) ;
       начало=Low[ бар_начало ];
       
      //   Alert ( " бар_вершина   ",бар_вершина  , " вершина  " , вершина ,
      //    " бар_основание_первого_снижения  " ,бар_основание_первого_снижения  , " основание_первого_снижения  " , основание_первого_снижения , 
      //    " бар_начало  " , бар_начало   , " начало  " , начало    );
  if(начало>основание_первого_снижения){naklon=(начало-основание_первого_снижения)/(бар_начало-бар_основание_первого_снижения);
 // Alert("naklon  ", naklon);
    НижняячертаBuffer2[бар_начало]=начало;linija2=начало;for(i=бар_начало-1;i>=0;i--){linija2=linija2-naklon;
  //  Alert ("linija2  " , linija2 );
    НижняячертаBuffer2[i]=linija2;
   //  Alert("НижняячертаBuffer2[i]  ", НижняячертаBuffer2[i] , "  i " , i);
   }
    НижняячертаBuffer2[бар_основание_первого_снижения]=основание_первого_снижения;}
    
    
         for (i=0;i<100;i++){  СинняячертаBuffer3[i]= Open[i];}
          for (i=330;i<500;i++){  СинняячертаBuffer3[i]= Open[i];}

     ВерхняячертаBuffer1[бар_начало]=начало;
     
 double точка4; int бар_точка4;   бар_точка4=iHighest( NULL,  timeframe, MODE_HIGH, бар_основание_первого_снижения, 3 ) ; 
  точка4 =High[ бар_точка4 ];  
   
   if(вершина>точка4){naklon=(начало-точка4)/(бар_начало-бар_точка4);  
   double linija1=начало;for(i=бар_начало-1;i>=0;i--){linija1=linija1-naklon;ВерхняячертаBuffer1[i]=linija1; }}
   
 double vulf=НижняячертаBuffer2[0];
  if ( vulf==Ask&&vulf==Bid)vulf=1;
  else{ for (vulf=vulf+Point*10; vulf==НижняячертаBuffer2[0];vulf=vulf-Point){
           if ( vulf==Ask&&vulf==Bid){vulf=1;}} 
      for (vulf=vulf-Point*10; vulf==НижняячертаBuffer2[0];vulf=vulf+Point){
           if ( vulf==Ask&&vulf==Bid)vulf=1;} 
              
           
           
           }
           
           
   if (vulf==1){Comment ("  Есть вульв!!! "  , "  timeframe " , timeframe);return(0);  }
    else pereklutsatel=pereklutsatel+1;  Sleep(10000);       int hwnd;
   if (vulf!=1&&pereklutsatel==1) {timeframe=15;hwnd=WindowHandle(Symbol(),Period());
                                    PostMessageA(hwnd,WM_COMMAND,33139,0);
                                    Sleep(10000);
                                     }  
   if (vulf!=1&&pereklutsatel==2) {timeframe=30;hwnd=WindowHandle(Symbol(),Period());
                                   PostMessageA(hwnd,WM_COMMAND,33140,0);
                                   Sleep(10000); 
                                   } 
   if (vulf!=1&&pereklutsatel==3) {timeframe=60;hwnd=WindowHandle(Symbol(),Period());
                                   PostMessageA(hwnd,WM_COMMAND,35400,0);
                                    Sleep(10000);
                                     }  
   if (vulf!=1&&pereklutsatel==4) {timeframe=240;hwnd=WindowHandle(Symbol(),Period());
                                    PostMessageA(hwnd,WM_COMMAND,33136,0);
                               Sleep(10000);
                                }  
   if (vulf!=1&&pereklutsatel==5) {timeframe=1440;hwnd=WindowHandle(Symbol(),Period());
                                   PostMessageA(hwnd,WM_COMMAND,33134,0);
                             Sleep(10000); 
                              }  
   if (vulf!=1&&pereklutsatel==6) {timeframe=10080;hwnd=WindowHandle(Symbol(),Period());
                                   PostMessageA(hwnd,WM_COMMAND,33141,0);
                               Sleep(10000);
                                }  
   if (vulf!=1&&pereklutsatel==7) {Comment ("  Нет вульва!!! "  , "  timeframe " , timeframe);K=K+50;return(0); }                                               }
//----
   return(0);
  }
//+------------------------------------------------------------------+
 
Olá, você poderia me dizer como expressar o preço do último bar fechado? Afinal de contas, os preços Bid & Ask do momento atual são?
 
Fechar[1]
 

Ótimo!!! Então é assim que você pode usar a atualização!!!

Sim, é isso mesmo, o verdadeiro, vejo que a FAQ já respondeu. A propósito, Obrigado!!!!!

 
skyjet:
Olá, você poderia me dizer como expressar o preço do último bar fechado? Afinal, Bid & Ask são os preços do momento atual?
A pergunta é indefinida -- a resposta é ambígua, escolha --> Fechar[1], Alto[1], Baixo[1], Aberto[1], (Alto[1]+Baixo[1])/2, ...
 
FAQ:
Fechar[1]
Muito obrigado! Como posso expressar os pontos? Basta escrever +5?
 

Para expressar o número de pontos, você deve dividir por ponto. Esta parece ser a chamada variável pré-definida, que é o tamanho de um único ponto. Oh, não, não, não é isso. Digamos que você tem um certo valor de preço, digamos 1,2244. Se você quiser adicionar 5 pontos ao preço, terá que escrevê-lo como 1,2244+(5*Ponto), será 1,2249. Você entendeu?


 
Dimka-novitsek:

Para expressar o número de pontos, você deve dividir por ponto. Esta parece ser a chamada variável pré-definida, que é o tamanho de um único ponto. Oh, não, não, não é isso. Digamos que você tem um certo valor de preço, digamos 1,2244. Se você quiser adicionar 5 pontos ao preço, terá que escrevê-lo como 1,2244+(5*Ponto), será 1,2249. Você entendeu?


Tudo isso faz sentido agora, muito obrigado!
Razão: