출시 후 다음 조건에서 5분 차트의 과정을 따를 전문가 고문: - 페이지 5

 
내 코드를 만들었고 컴파일되는 것처럼 보였지만 작동합니까?

int start()
{


//----
if (iOpen(NULL,5,0)-Bid>Delta*Point) //Цена упала больше Delta пунктов
{
OrderSend(Symbol(),OP_BUY,Ask,5,0,Ask+TakeProfit*Point,0);

}
if (iOpen(NULL,5,0)-Bid<Delta*Point) //Цена выросла больше Delta пунктов
{
OrderSend(Symbol(),OP_SELL,Ask,5,0,Ask+TakeProfit*Point,0);
}
//----
return(0);
}


OrderSend(Symbol(),OP_SELL,Ask,5,0,Ask+TakeProfit*Point,0);
Эту строку вытащил из другого эксперта. А что означают в ней цифры 5 и 0?
 
당신은 돌이킬 수없는 모든 것이 도움말을 읽으십시오.
 
결국 해보니 뭔가 되긴 하는데 안되네요....... :(
뭐가 문제 야?

//+------------------------------------------------------------------+
//|                                                Expert-000001.mq4 |
//|                                    Copyright © 2008, salesman*** |
//|                                         http://www.forexgrand.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, salesman***"
#property link      "http://www.forexgrand.ru"
extern int StopLoss=12;                         // Stop Loss
extern int TakeProfit=3;                        // Take Profit
extern int Percent=100;                         // Объем сделки в %
extern int Delta=30;                            // Сигнал приказа в пунктах
extern string _Comment = "Money-money-money";    // Комментарий к ордеру
extern int MagicNumber =55555;                  // Order ID
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
{


//----
if (iOpen(NULL,5,0)-Bid>Delta*Point) //Цена упала больше Delta пунктов
{
OrderSend(Symbol(),OP_BUY,Ask,5,0,Ask*Point,0);

}
if (iOpen(NULL,5,0)-Bid<Delta*Point) //Цена выросла больше Delta пунктов
{
OrderSend(Symbol(),OP_SELL,Ask,5,0,Ask*Point,0);
}
//----
return(0);
}
//+------------------------------------------------------------------+
 
차트의 얼굴은 웃고 있지만 ....... 작동하지 않습니다. 파운드에 시도.
 

OrderSend 함수(문자열 기호, int cmd, 이중 볼륨, 이중 가격, int 미끄러짐, 이중 손절매, 이중 이익 실현, 문자열 주석=NULL, int magic=0, datetime 만료=0, color arrow_color=CLR_NONE)

매개변수: 기호 - 거래 작업이 수행되는 금융 상품의 이름.

cmd - 거래 작업. 모든 거래 작업 값이 될 수 있습니다.

볼륨 - 로트 수.

가격 - 시작 가격. 슬리피지 - 시장 주문(구매 또는 판매 주문)에 대한 최대 허용 가격 편차.

stoploss - 손실 수준에 도달했을 때의 포지션 종가(손실 수준이 없는 경우 0).

takeprofit - 이익 수준에 도달했을 때 포지션 종가입니다(이익 수준이 없는 경우 0).

comment - 주석 텍스트를 주문합니다. 댓글의 마지막 부분은 거래 서버에 의해 변경될 수 있습니다.

magic - 주문의 매직 번호입니다. 사용자 정의 식별자로 사용할 수 있습니다.

만료 - 보류 중인 주문의 만료 날짜입니다.

arrow_color - 차트의 시작 화살표 색상입니다. 매개변수가 없거나 해당 값이 CLR_NONE과 같으면 시작 화살표가 차트에 표시되지 않습니다.

당신은 그것을 어디에 가지고 있습니까? - OrderSend 대신 어떤 종류의 스텁이 있습니다.


 #property copyright " Copyright © 2008, salesman и группа лиц "
#property link      " http://www.forexgrand.ru "
extern int StopLoss = 12 ;                         // Stop Loss
extern int TakeProfit = 3 ;                        // Take Profit
extern int Percent = 100 ;                         // Объем сделки в %
extern int Delta = 30 ;                            // Сигнал приказа в пунктах
extern int MagicNumber = 55555 ;                  // Order ID
int  ticket ;
 ticket = OrderSend ( Symbol () , OP_BUY , 1 , Ask , 3 , Bid - StopLoss * Point , Ask + TakeProfit * Point , " My order # " , MagicNumber , 0 , Green ) ;

 

그리고 Ask*Point 계산의 결과는 다음과 같습니다.

 OrderSend ( Symbol () , OP_SELL , Ask , 5 , 0 , Ask * Point , 0 ) ;
???
 
어쩐지 저한테 안맞네요....
전체 코드는 다음과 같습니다.
//+------------------------------------------------------------------+
//|                                                Expert-000001.mq4 |
//|                                    Copyright © 2008, salesman*** |
//|                                         http://www.forexgrand.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, salesman***"
#property link      "http://www.forexgrand.ru"
extern int StopLoss=12;                          // Stop Loss
extern int TakeProfit=3;                         // Take Profit
extern int Percent=70;                           // Объем сделки в %
extern int Slippage = 3;                         // Максимальное отклонение от запрошенной цены
extern int Delta=2;                              // Сигнал приказа в пунктах
extern string _Comment = "Money-money-money";    // Комментарий к ордеру
extern int MagicNumber =55555;                   // Order ID
int  ticket;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
{


//----
if (iOpen(NULL,5,0)-Bid>Delta*Point) //Цена упала больше Delta пунктов
{
ticket=OrderSend(Symbol(),OP_BUY,1,Ask,3,Bid-StopLoss*Point,Ask+TakeProfit*Point,"My order #",MagicNumber,0,Green);

}
if (iOpen(NULL,5,0)-Bid<Delta*Point) //Цена выросла больше Delta пунктов
{
ticket=OrderSend(Symbol(),OP_SELL,1,Ask,3,Bid-StopLoss*Point,Ask+TakeProfit*Point,"My order #",MagicNumber,0,Green);
}
//----
return(0);
}
//+------------------------------------------------------------------+


빠른 테스트를 위해 Delta=2로 설정했습니다.

extern int Delta=2;


아마도 어떻게 든 이것을 구현하여 오류를 이해할 수 있습니다.

//+------------------------------------------------------------------+
bool IsCondition()
  {
   bool result=true;
   string field="     ";
   string msg;
   string title="Ошибка"; if (AccountNumber()>0)title=AccountNumber()+": "+title;
   if (!IsConnected())
     {
      msg=msg+"Связь с сервером отсутствует"+field;
      result=false;
     }
   if (!IsTradeAllowed())
     {
      if (!result) msg=msg+"\n";
      msg=msg+"Торговля запрещена"+field;
      result=false;
     }
   if (!result) MessageBox(msg,title,MB_OK|MB_ICONERROR);
   return(result);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void ShowError()
  {
   string description;
   int err=GetLastError();
   switch(err)
     {
      case   0: return;
      case   1: description="Нет ошибки, но результат неизвестен"; break;
      case   2: description="Общая ошибка"; break;
      case   3: description="Неправильные параметры"; break;
      case   4: description="Торговый сервер занят"; break;
      case   5: description="Старая версия клиентского терминала"; break;
      case   6: description="Нет связи с торговым сервером"; break;
      case   7: description="Недостаточно прав"; break;
      case   8: description="Слишком частые запросы"; break;
      case   9: description="Недопустимая операция нарушающая функционирование сервера"; break;
      case  64: description="Счет заблокирован"; break;
      case  65: description="Неправильный номер счета"; break;
      case 128: description="Истек срок ожидания совершения сделки"; break;
      case 129: description="Неправильная цена"; break;
      case 130: description="Неправильные стопы"; break;
      case 131: description="Неправильный объем"; break;
      case 132: description="Рынок закрыт"; break;
      case 133: description="Торговля запрещена"; break;
      case 134: description="Недостаточно денег для совершения операции"; break;
      case 135: description="Цена изменилась"; break;
      case 136: description="Нет цен"; break;
      case 137: description="Брокер занят"; break;
      case 138: description="Новые цены"; break;
      case 139: description="Ордер заблокирован и уже обрабатывается"; break;
      case 140: description="Разрешена только покупка"; break;
      case 141: description="Слишком много запросов"; break;
      case 145: description="Модификация запрещена, так как ордер слишком близок к рынку"; break;
      case 146: description="Подсистема торговли занята"; break;
      case 147: description="Использование даты истечения ордера запрещено брокером"; break;
      default : description="Неизвестная ошибка"; break;
     }
   string field="     ";
   string msg="Ошибка #"+err+" "+description+field;
   string title="Ошибка"; if (AccountNumber()>0)title=AccountNumber()+": "+title;
   MessageBox(msg,title,MB_OK|MB_ICONERROR);
  }
// End
//+------------------------------------------------------------------+
 
salesman77 :
어쩐지 저한테 안맞네요....
전체 코드는 다음과 같습니다.
if (iOpen(NULL,5,0)-Bid>Delta*Point) //Цена упала больше Delta пунктов
{
ticket=OrderSend(Symbol(),OP_BUY,1,Ask,3,Bid-StopLoss*Point,Ask+TakeProfit*Point,"My order #",MagicNumber,0,Green);

}
if (iOpen(NULL,5,0)-Bid<Delta*Point) //Цена выросла больше Delta пунктов
{
ticket=OrderSend(Symbol(),OP_SELL,1,Ask,3,Bid-StopLoss*Point,Ask+TakeProfit*Point,"My order #",MagicNumber,0,Green);
}
//----
return(0);
}
//+------------------------------------------------------------------+


일반적으로 매수와 매도를 위한 OrderSend는 약간 다르게 작성됩니다. 매도호가에 매수하고 매도호가에 매도하기 때문입니다! 그리고 발자취도 닫습니다 ... 당신과 함께 - 모든 것이 같은 가격에 있습니다 ...
게다가, 그것은 lot = 1로 작업을 제공합니다. 이 금액에 해당하는 보증금이 있습니까? 그리고 로그에 무엇이 기록되어 있습니까? 왜 작동하지 않습니까?
 

당신은 Bid와 Ask의 차이점을 모르고, 숏 포지션과 롱 포지션의 차이를 이해하지 못합니다. 손절매와 이익실현이 무엇인지 모릅니다. 당신은 당신이 이미 쓴 것을 이해하지 못합니다. 무작위로 코딩하려고 합니다. 누가 당신을 도울 수 있습니까???? 매트를 배우십시오. 부분. 모든 질문에 대한 답변이 완료되었습니다. 나는 당신의 교과서를 인용하는 요점을 이해하지 못합니다.

 
salesman77 :
어쩐지 저한테 안맞네요....
빠른 테스트를 위해 Delta=2로 설정했습니다.

extern int Delta=2;


무엇 때문에? 테스터 사용법을 알고 있습니까?

나는 남자 친구가 있었다. 그는 1년 동안 외환 거래를 했지만 여전히 롱 포지션은 오랫동안 시장에 있었던 포지션이라고 생각했습니다. 그리고 짧은 것은 하나입니다 - "글쎄, 삐삐처럼, 헐 ..."!

그리고 어떻게 생각하세요?

사유: