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

 

안녕하세요! 고문을 썼다! 테스터에서는 모든 것이 작동하지만 실제 계정에서 포지션을 여는 것을 거부합니다! 수동으로 열린 위치를 잘 닫는다는 점에 유의하지만 열기를 원하지 않습니다... 어떻게 해야 합니까?


코드:


//+----------------------------------------------- --------------------+
//| 독트레이드.mq4 |
//| DOKSTER@YANDEX.RU |
//| DOKSTER@YANDEX.RU |
//+----------------------------------------------- --------------------+
#property copyright "DOKSTER@YANDEX.RU"
#속성 링크 "DOKSTER@YANDEX.RU"

외부 이중 LOT = 0.01; // 많이
외부 이중 KOF = 2;
외부 이중 SAF = 5;
외부 정수 FRC = 21;

정수 시작()

{


정수 CNT;

정수 총계;
정수 확산;

이중 SPR;
이중 SPRW;

이중 FRCU;
이중 FRCD;

이중 EMAH;
더블 EMAM;
더블 EMAL;

더블 오픈;
이중 닫기;

이중 DFB;
이중 DFS;

EMAH = iMA(NULL,0,34,8,MODE_SMA,PRICE_HIGH,1);
EAM = iMA(NULL,0,34,8,MODE_SMA,PRICE_MEDIAN,1);
Emal = iMA(NULL,0,34,8,MODE_SMA,PRICE_LOW,1);

오픈 = iOpen(NULL,0,1);
닫기 = iClose(NULL,0,1);

FRCU = 높음[iHighest(NULL,0,MODE_HIGH,FRC,1)];
FRCD = 낮음[iLowest(NULL,0,MODE_LOW,FRC,1)];

DFB=(닫기-FRCD);
DFS=(FRCU-닫기);

SPR = MarketInfo(Symbol(),MODE_SPREAD);
SPRW = (SPR*포인트);

총계 = 주문 총계();

if(총<1)

{

{ if (OPEN<EMAH&&CLOSE>EMAH)

OrderSend(Symbol(),OP_BUY,LOT,Ask,3,FRCD-(SAF*Point),CLOSE+(DFB*KOF),"DOKTRADE",15775,0,Green);


if (OPEN>EMAL&&CLOSE<EMAL)

OrderSend(Symbol(),OP_SELL,LOT,Bid,3,FRCU+((SAF*Point)+SPRW),CLOSE-(DFS*KOF),"DOKTRADE",15885,0,Red);

리턴(0);

}
}

for(CNT=0;CNT<TOTAL;CNT++)

{

주문 선택(CNT,SELECT_BY_POS,MODE_TRADES);

{

if (OrderType()==OP_BUY && OrderSymbol()==Symbol())

{

if (OPEN>EMAL&&CLOSE<EMAL)

OrderClose(OrderTicket(),OrderLots(), 입찰, 3, 보라색);

리턴(0);

}

if (OrderType()==OP_SELL && OrderSymbol()==Symbol())

{

if (OPEN<EMAH&&CLOSE>EMAH)

OrderClose(OrderTicket(),OrderLots(),Ask,3,Blue);

리턴(0);

}

}

}

}
 

안녕하세요!

얘들 아, 내가 어디 바보인지 알아낼 수 있도록 도와주세요. Aroon Up&Dn 표시기가 있습니다.

나는 그것을 고문에 넣으려고 ... 주문을 열고 싶지 않습니다:

 extern int      _Aroon_Period = 14 ;
extern int      _TimeF = 60 ;
extern int      _Point = 10 ;
extern double   _lots= 0.01 ;
extern int      _Prof = 150 ;
 int start()
  {
//----
   double _Up1, _Up2, _Dn1, _Dn2;
   if (Volume[ 0 ]> 1 ) return ;
   if ( _Point < MarketInfo ( Symbol (),MODE_STOPLEVEL)) _Point = MarketInfo ( Symbol (),MODE_STOPLEVEL);
   _Up1= iCustom ( NULL ,_TimeF, "Aroon_Up_Down" ,_Aroon_Period, 1 , 1 ); // пробовал 0 и AroonUpBuffer
   _Up2= iCustom ( NULL ,_TimeF, "Aroon_Up_Down" ,_Aroon_Period, 1 , 2 );
   _Dn1= iCustom ( NULL ,_TimeF, "Aroon_Up_Down" ,_Aroon_Period, 2 , 1 );
   _Dn2= iCustom ( NULL ,_TimeF, "Aroon_Up_Down" ,_Aroon_Period, 2 , 2 );   // пробовал 1 и AroonDnBuffer

   if (_Up1>_Dn1  && _Up2<_Dn2) 
   
   {      
       _OrderDelete(OP_SELLSTOP);
      _price= NormalizeDouble ((High[ 1 ]+ _Point * Point ), MarketInfo ( Symbol (),MODE_DIGITS));
      _OrderModify(OP_SELL);
       OrderSend ( Symbol (),OP_BUYSTOP,_lots,_price, 5 , 0 ,_price+_Prof* Point , 0 , 0 , 0 , Green );
   }
   if ( _Up1<_Dn1  && _Up2>_Dn2 ) 
   
   {     
      _OrderDelete(OP_BUYSTOP);
      _price= NormalizeDouble ((Low[ 1 ]- _Point * Point ), MarketInfo ( Symbol (),MODE_DIGITS));
      _OrderModify(OP_BUY);
       OrderSend ( Symbol (),OP_SELLSTOP,_lots,_price, 5 , 0 ,_price-_Prof* Point , 0 , 0 , 0 , Red );
   }

//---- OrderSendError
   return ( 0 );
  }
파일:
 
7sintez :

안녕하세요! 조언을 작성했습니다! 테스터에서는 모든 것이 작동하지만 실제 계정에서 포지션을 여는 것을 거부합니다! 수동으로 열린 위치를 잘 닫는다는 점에 유의하지만 열기를 원하지 않습니다... 어떻게 해야 합니까?


시작하려면 로그의 오류를 살펴보십시오... 주문을 보낼 때 가격 매개변수의 경우 NormalizeDouble을 적극 권장합니다.

 
splxgf :

먼저 로그의 오류를 살펴보십시오. 주문을 보낼 때 가격 매개변수는 NormalizeDouble을 적극 권장합니다.

물론 조언에 감사드립니다. 가능하다면 - 더 자세히 ... 동기화를 제외하고는 로그에 아무것도 표시되지 않습니다! 말해봐, 내가 어딘가에 뭔가를 추가 할 수 있습니까? 예, 정상적으로 닫힙니다... 즉. 모든 작동을 닫습니다..!
 
그리고 또 다른 질문 - 다른 스크립트의 작업이 이 Expert Advisor의 작업에 영향을 줄 수 있습니까?
 
NormalizeDouble 로 마무리 ... 반응 없음! 설정에서 뭔가를 변경할 수 있습니까?
 
splxgf :

https://docs.mql4.com/ru/array/ArrayMaximum 을 통해 이동할 수 있습니다.

High 어레이에 의해.

가능하다면 더 자세히 이해할 수 없습니다. High[i]에서 High[1]까지의 범위에서 가장 큰 값을 찾아야 합니다. 고맙습니다!
 
93408 :

안녕하세요!

얘들 아, 내가 어디 바보인지 알아낼 수 있도록 도와주세요. Aroon Up&Dn 표시기가 있습니다.

나는 그것을 고문에 넣으려고 ... 주문을 열고 싶지 않습니다:


이것 때문에 생각한다

(볼륨[0]>1) 반환하는 경우;

 
7sintez :
물론 조언에 감사드립니다. 가능하다면 - 더 자세히 ... 동기화를 제외하고는 로그에 아무것도 표시되지 않습니다! 말해봐, 내가 어딘가에 뭔가를 추가할 수 있을까? 예, 정상적으로 닫힙니다... 즉. 모든 작동을 닫습니다 ..!

사실 EA작가에게 그런 질문을 하는 건 말도 안 되는 일이거든요 :) 아직 초보가 되지 않으셨고 계산된 스탑을 확인하고 오더 오픈 가격 에 근접하는지 등의 조언을 해줄 것입니다. 일반적으로 당신에게 한자처럼 보입니다.
 
Roger :


이것 때문에 생각한다

(볼륨[0]>1) 반환하는 경우;

아니, 그게 아니야.

모두 감사합니다. 획득