제가 알기로는 다른 악기에 대해 3개의 주문을 개설해야 합니까? 예를 들어 플래그 변수를 만들지 않는 이유는 무엇입니까?
전역 변수에서 우리는
int flag=0; string Symb;
///////////////
더 나아가
int start() { if (условие открытия) {flag=1;}
if (flag==1) { Symb="EURUSD"; OrderSend(Symb,...)///Открываем, переносим флаг во 2 состояние для открытия след ордера и flag=2; ///выходим тк больше мы ни чего не можем сделать return(0); }
if (flag==2) { Symb="AUDUSD"; OrderSend(Symb,...) flag=3; return(0); }
if (flag==3) { Symb="USDJPY"; OrderSend(Symb,...) flag=0;//Возвращаем флаг в начальное состояние.. return(0); } return(0);}
여는 수표를 추가하는 것은 나쁘지 않으며 수표가 성공적으로 통과된 후에만 플래그를 이동합니다.
그리고 마지막으로 이런 경우에는 GetLastError()를 더 광범위하게 사용하려고 합니다. 그러나 나는 확실히 프로가 아닙니다.
GetLastError()는 예를 들어 스레드가 사용 중이지만 전혀 똥이 없는 경우와 같이 무언가가 수행되지 않는 이유를 알려야 한다는 것을 이해합니다!
제가 알기로는 다른 악기에 대해 3개의 주문을 개설해야 합니까? 예를 들어 플래그 변수를 만들지 않는 이유는 무엇입니까?
전역 변수에서 우리는
int flag=0;
string Symb;
///////////////
더 나아가
int start()
{
if (условие открытия)
{flag=1;}
if (flag==1)
{
Symb="EURUSD";
OrderSend(Symb,...)///Открываем, переносим флаг во 2 состояние для открытия след ордера и
flag=2; ///выходим тк больше мы ни чего не можем сделать
return(0);
}
if (flag==2)
{
Symb="AUDUSD";
OrderSend(Symb,...)
flag=3;
return(0);
}
if (flag==3)
{
Symb="USDJPY";
OrderSend(Symb,...)
flag=0;//Возвращаем флаг в начальное состояние..
return(0);
}
return(0);}
여는 수표를 추가하는 것은 나쁘지 않으며 수표가 성공적으로 통과된 후에만 플래그를 이동합니다.
정말 감사합니다! 내가 해볼게!
}
else Print("긴 위치를 여는 동안 오류 발생:", GetLastError() );
OrderSelect()가 실패하면 오류를 반환합니다.
if(OrderSend(Symbol(), OP_SELLSTOP, getLots, Bid, 0, 0, 0, WindowExpertName(),마법, 0, 빨간색) < 0)
Print("판매 중지 열기 오류 = ",GetLastError());
OrderSend()가 실패하면 오류를 반환합니다.정확히 OrderSend()가 작동하지 않는 버전이 있습니다.
그러나 테스터에서 작동하는 버전이 없는 이유는 무엇입니까?
그러나 테스터에서 작동하는 버전이 없는 이유는 무엇입니까?
아니요. 그러나 나는 Print 함수를 더 광범위하게 사용하면(후속 GetLastError가 없어도),
고문이 거래하는 방법을 보는 것이 훨씬 좋습니다.
예를 들면 다음과 같습니다.
if(MA1>MA2 && StochPrev<StohCur && StochPrev<SignPrev)
{
print("구매 주문 조건 충족 ");
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,"",16895,0,DeepSkyBlue);if(티켓>0)
}