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

 
boris.45 :

감사합니다

따라서 데이터를 다운로드합니다. F2 키를 누르고 쌍을 선택하고 M1에 대한 전체 기록을 다운로드합니다.
[Deleted]  

안녕하세요!

Expert Advisor에서 다른 시간 간격(기간???????)의 가격과 지표 값을 비교하는 방법을 알려주세요. 나는 코드를 게시합니다. 검색은 아무 것도 제공하지 않았습니다. 내가 이 스레드(940부터)를 읽을 수 있는 힘이 얼마나 있었는지. 미리 감사합니다!!

 //+------------------------------------------------------------------+
//|                                        expert SAR_1_5_15 min.mq4 |
//|                      Copyright © 2009, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link       "http://www.metaquotes.net"

//---- input parameters
extern double     Lots= 0.01 ;
extern int        StopLoss= 300 ;
extern int        TakeProfit= 150 ;
extern int        MagicNumber= 123456 ;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return ( 0 );
  }
  
bool CheckOrders( int Type)
{
 bool Result=True;
 for ( int i= 0 ;i< OrdersTotal ();i++)
   if ( OrderSelect (i,SELECT_BY_POS))
   if (OrderMagicNumber()==MagicNumber && OrderSymbol() == Symbol ())
       if (OrderType()==Type)
        {
         if (Type==OP_BUY)
           if (!OrderClose(OrderTicket(),OrderLots(),Bid, 0 ))
             Result=False;
         if (Type==OP_SELL)
           if (!OrderClose(OrderTicket(),OrderLots(),Ask, 0 ))
             Result=False;
         } 
         else Result=False;
 return (Result); 
}

// Проверяем наличие закрытой на текущей свече позиции типа Type. Если есть, то возвращает False  
bool CheckExists( int Type)  
{
 bool Result=True;
 for ( int i=OrdersHistoryTotal()- 1 ; i>= 0 ;i--)
   if ( OrderSelect (i, SELECT_BY_POS, MODE_HISTORY))
   if (OrderMagicNumber()==MagicNumber&&OrderSymbol()== Symbol ()&&OrderCloseTime()>=Time[ 0 ]&&OrderType()==Type)
    {
     Result=False;
     break ;
     }
 return (Result); 
 }
  
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
     // Узнаем уровень стопов и спрэд
     int Spread = MarketInfo( Symbol (), MODE_SPREAD);
     int StopLevel = MarketInfo( Symbol (), MODE_STOPLEVEL);

     // Рассчитываем значения Parabolic,на 0-ом, 1-ом и 2-м барах для 1,5-ти,15-ти минутн. графиков
     double sar10 = iSAR ( NULL , 1 , 0.02 , 0.2 , 0 );
     double sar11 = iSAR ( NULL , 1 , 0.02 , 0.2 , 1 );
     double sar50 = iSAR ( NULL , 5 , 0.02 , 0.2 , 0 );
     double sar51 = iSAR ( NULL , 5 , 0.02 , 0.2 , 1 );
     double sar150 = iSAR ( NULL , 15 , 0.02 , 0.2 , 0 );
     double sar151 = iSAR ( NULL , 15 , 0.02 , 0.2 , 1 );
     double sar152 = iSAR ( NULL , 15 , 0.02 , 0.2 , 2 );
        
   //-------------открытие позиции Buy покупка----------------- 
     if (
    (sar10>Open[ 0 ])&&     //  SAR 1 // сравниваем с ценой открытия
    (sar11>Close[ 0 + 1 ])&&     // минута и сравниваем с ценой закрытия
    (sar50>Open[ 0 ])&&         //  SAR 5
    (sar51>Close[ 0 + 1 ])&&       // минут
    (sar150>Open[ 0 ])&&         //  SAR 15
    (sar151>Close[ 0 + 1 ])&&     // минут
    (sar152<Close[ 0 + 2 ])       // начало тренда
    )
     if (CheckOrders(OP_SELL) && CheckExists(OP_BUY))
      {
       if (StopLoss <= StopLevel+Spread)
         double SL = 0 ;
         else
         SL = Ask - StopLoss* Point ;
       if (TakeProfit <= StopLevel-Spread)
         double TP = 0 ;
         else
         TP = Ask + TakeProfit* Point ;
       if (! OrderSend ( Symbol (), OP_BUY, Lots, Ask, 10 , SL, TP, NULL , MagicNumber))
         Print ( "Не открыт ордер Buy. Ошибка №" , GetLastError ()); 
       }
     //-------------------Конец блока покупки -------------------
    
     //-------------Открытие позиции Sell продажа----------------  
     if (
    (sar10<Open[ 0 ])&&       //  SAR 1
    (sar11<Close[ 0 + 1 ])&&     // минут
    (sar50<Open[ 0 ])&&       //  SAR 5
    (sar51<Close[ 0 + 1 ])&&     // минут
    (sar150<Open[ 0 ])&&         //  SAR 15
    (sar151<Close[ 0 + 1 ])&&     // минут
    (sar153>Close[ 0 + 2 ])       // начало тренда
    )
     if (CheckOrders(OP_BUY) && CheckExists(OP_SELL))
      {
       if (StopLoss <= StopLevel+Spread)
         SL = 0 ;
         else
         SL = Bid + StopLoss* Point ;
       if (TakeProfit <= StopLevel-Spread)
         TP = 0 ;
         else
         TP = Bid - TakeProfit* Point ;
       if (! OrderSend ( Symbol (), OP_SELL, Lots, Bid, 10 , SL, TP, NULL , MagicNumber))
         Print ( "Не открыт ордер Sell. Ошибка №" , GetLastError ()); 
       }

//-----------------конец блока продажи ----------------------
   return ( 0 );
  }
//+------------------------------------------------------------------+
[Deleted]  
안녕하세요 친애하는 프로그래머!
스트로크를 거래하는 고문이 있습니다. 문제는 포지션의 정확한 오픈과 클로징이 항상 일어나는 것은 아니라는 점인데, 슬리피지 때문에 생각합니다. Slippage 매개변수를 EA에 첨부하십시오. 감사해요
파일:
[삭제]  

안녕하세요 여러분!

이 고문을 설정하는 방법을 알려주십시오. https://www.mql5.com/ru/code/9434

나는 그것이 특정 마이너스 또는 플러스에 도달했을 때, 또는 헤지 포지션을 열거나, 이익으로 닫을 때 그것을 각각 필요로 합니다.

그러나 매개 변수에서 무엇을 변경해야 하는지 모르겠습니다.

매개변수가 있습니다: 이익플러스 1.0

이익 마이너스 -1.0

이익 1.0

어디서 바꿀까?

고맙습니다.

 

일간 캔들 개장 시 포지션을 오픈하는 어드바이저를 볼 수 있는 링크를 알려주세요.

고마워.

 
glasha :
안녕하세요 친애하는 프로그래머!
스트로크를 거래하는 고문이 있습니다. 문제는 포지션의 정확한 오픈과 클로징이 항상 일어나는 것은 아니라는 점인데, 슬리피지 때문에 생각합니다. Slippage 매개변수를 EA에 첨부하십시오. 감사해요
파일:
 
igrok2008 :

안녕하세요!

Expert Advisor에서 다른 시간 간격(기간???????)의 가격과 지표 값을 비교하는 방법을 알려주세요. 나는 코드를 게시합니다. 검색은 아무 것도 제공하지 않았습니다. 내가 이 스레드(940부터)를 읽을 수 있는 힘이 얼마나 있었는지. 미리 감사합니다!!

여기까지 이해하고 비교했습니다. 내가 틀렸다면, 저를 수정하십시오.

만약 (
(sar10>Open[ 0 ])&& // SAR 1 // 시가와 비교
(sar11>Close[ 0 + 1 ])&& // 분 및 종가 와 비교
(sar50>열기[ 0 ])&& // SAR 5
(sar51>닫기[ 0 + 1 ])&& // 분
(sar150>열기[ 0 ])&& // SAR 15
(sar151>닫기[ 0 + 1 ])&& // 분
(sar152<Close[ 0 + 2 ]) // 추세 시작
)

 

1. 실제 또는 테스터의 다양한 tf에서 프로그램을 조정하는 방법.

예: 시간에 우리는 30분 및 그 이하(.) 진입/출구에서 추세를 찾고 찾습니다.

감사하다.

[Deleted]  
좋은 날입니다. 이 EMA 교차 신호 표시기를 각 교차로에서 하나 이상의 소리 신호를 방출하도록 만드는 방법을 알려주세요. 하지만 몇 개를 원하나요?
 
x8profit :
좋은 날입니다. 이 EMA 교차 신호 표시기를 각 교차로에서 하나 이상의 소리 신호를 방출하도록 만드는 방법을 알려주세요. 하지만 몇 개를 원하나요?

코드를 보지는 않았지만 가장 먼저 떠오른 것은 하나의 사운드 신호가 나오는 코드 대신 루프를 만들고 반복 횟수를 외부에 출력하는 것이었습니다. 신호는 설정에서 지정한 횟수만큼 생성됩니다...

비록 ... 신호 길이 * 루프의 반복 횟수 동안 칠면조 작업이 일시 중지됩니다.