말해 주세요. 그렇지 않으면 이전에 프로그래머에게 도움을 요청한 적이 없습니다. - 페이지 6

 
Serqey Nikitin :

당신은 이해하지 못합니다 ... 아무도 인용문을 가짜로 만들지 않을 것입니다 ...

규칙 은 명령 실행의 "지연"을 금지하지 않습니다 ... 및 확산 확대 ...

나는 당신을 이해했다. 당신은 아마 나를 이해하지 못했습니다. 나는 모든 것이 적절함의 한계가 있다는 것을 의미했습니다. 스프레드는 각 미결 주문에 대해 10배 확장되지 않습니다. 지연도 여러 번 증가하지 않습니다.

그리고 솔직히 자랑하러 온 게 아니다. 아이디어가 작동하지 않으므로 내가 대다수가 될 것입니다. 이것이 표준입니다.
 
Serqey Nikitin :

당신은 이해하지 못합니다 ... 아무도 인용문을 가짜로 만들지 않을 것입니다 ...

규칙 은 명령 실행의 "지연"을 금지하지 않습니다 ... 및 확산 확대 ...

어리석은 생각에 너무 많은 시간을 허비해서 죄송합니다... 그리고 당신이 스캘핑 광고에 빠졌기 때문에...
 
Serqey Nikitin :
어리석은 생각에 너무 많은 시간을 허비해서 죄송합니다... 그리고 스캘핑 광고에 빠졌기 때문에...

이것으로 당신과의 대화를 마칩니다. 다른 사람의 추측에 끼어 파고들고 싶지 않습니다.

 
Aleksandr2233 :

이것으로 당신과의 대화를 마칩니다. 다른 사람의 추측에 끼어 파고들고 싶지 않습니다.

머리를 켜십시오 ... 올바른 조언이 닿지 않으면 때로는 도움이됩니다 ...
 

EA는 손절매를 설정하고 보류 중인 주문 이 없는 경우 이익을 얻습니다. 그리고 보증금에서 정류장까지의 거리의 가격까지의 거리가 초과되면 보증금을 제거합니다.

 #property version    "2.00"
#property strict

input int StopLoss= 300 ;
input int TakeProfit= 500 ;

double loss, profit;
bool result;

string symbol;
double point;
int digits;
 
MqlTick tick;


int OnInit ()
   {
   symbol= Symbol ();
   point= SymbolInfoDouble (symbol, SYMBOL_POINT );
   digits=( int ) SymbolInfoInteger (symbol, SYMBOL_DIGITS );
   return ( INIT_SUCCEEDED );
   }

void OnDeinit ( const int reason)
   {
   
   }

void OnTick ()
   {
   SymbolInfoTick (symbol,tick);
   for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--)
      {
       if (! OrderSelect (i,SELECT_BY_POS,MODE_TRADES) && OrderSymbol()!=symbol && OrderClosePrice()!= 0 ) continue ;
       if (OrderType()==OP_BUYLIMIT || OrderType()==OP_SELLSTOP)
         {
         //устанавливаем стоплосс и тейкпрофит
         if ((OrderStopLoss()== 0 && StopLoss> 0 ) || (OrderTakeProfit()== 0 && TakeProfit> 0 ))
            {
            loss=(StopLoss> 0 )? NormalizeDouble (tick.ask- MathMax (StopLoss,( int ) SymbolInfoInteger (symbol, SYMBOL_TRADE_STOPS_LEVEL ))*point,digits): 0 ;
            profit=(TakeProfit> 0 )? NormalizeDouble ( MathMax (TakeProfit,( int ) SymbolInfoInteger (symbol, SYMBOL_TRADE_STOPS_LEVEL ))*point-tick.bid,digits): 0 ;
            result=OrderModify(OrderTicket(),OrderOpenPrice(),loss,profit, 0 );
            }
         //удаляем ордер
         if (OrderStopLoss()> 0 && tick.ask-OrderOpenPrice()>OrderOpenPrice()-OrderStopLoss())
            {
            result=OrderDelete(OrderTicket());
            }            
         }
       if (OrderType()==OP_SELLLIMIT || OrderType()==OP_BUYSTOP)
         {
         //устанавливаем стоплосс и тейкпрофит
         if ((OrderStopLoss()== 0 && StopLoss> 0 ) || (OrderTakeProfit()== 0 && TakeProfit> 0 ))
            {
            loss=(StopLoss> 0 )? NormalizeDouble ( MathMax (StopLoss,( int ) SymbolInfoInteger (symbol, SYMBOL_TRADE_STOPS_LEVEL ))*point-tick.bid,digits): 0 ;
            profit=(TakeProfit> 0 )? NormalizeDouble (tick.ask- MathMax (TakeProfit,( int ) SymbolInfoInteger (symbol, SYMBOL_TRADE_STOPS_LEVEL ))*point,digits): 0 ;
            result=OrderModify(OrderTicket(),OrderOpenPrice(),loss,profit, 0 );
            }
         //удаляем ордер
         if (OrderStopLoss()> 0 && OrderOpenPrice()-tick.bid>OrderStopLoss()-OrderOpenPrice())
            {
            result=OrderDelete(OrderTicket());
            }            
         }
      }
   }

확인하지 않았다

 
Aleksei Stepanenko :

EA는 손절매를 설정하고 보류 중인 주문 이 없는 경우 이익을 얻습니다. 그리고 보증금에서 정류장까지의 거리의 가격까지의 거리가 초과되면 보증금을 제거합니다.

확인하지 않았다

나중에 확인하겠습니다. 고맙습니다. 아마 개인적으로 답변해 드리겠습니다.

 
Serqey Nikitin :
머리를 켜십시오 ... 올바른 조언이 닿지 않으면 때로는 도움이됩니다 ...

당신의 충고에 감사합니다.

 
Aleksei Stepanenko :

EA는 손절매를 설정하고 보류 중인 주문 이 없는 경우 이익을 얻습니다. 그리고 보증금에서 정류장까지의 거리의 가격까지의 거리가 초과되면 보증금을 제거합니다.

확인하지 않았다

그러나 완성된 ex4 파일을 얻기 위해 코드로 무엇을 해야 할지 모르겠습니다. 메타에디터 프로그램이 있는 걸로 알고 있는데 총 1번 열어봤습니다.

 
\MQL4\Indicators 폴더에 넣고 터미널을 다시 시작하십시오.
파일:
 
Aleksei Stepanenko :
\MQL4\Indicators 폴더에 넣고 터미널을 다시 시작하십시오.

파일은 내가 이해하는 한 전문가입니다.

스냅샷 ee