ZeroMemory(판매)를 추가해 보십시오.
if (condition1) { ZeroMemory (sell); sell.action = TRADE_ACTION_DEAL ; sell.type = ORDER_TYPE_SELL ; sell.symbol = _Symbol ;이 문제를 해결했습니다. 다음 빌드를 기다리세요.
ZeroMemory(판매)를 추가해 보십시오.
이 문제를 해결했습니다. 다음 빌드를 기다리세요.Rosh, 방금 .565로 업데이트되었으며 동일한 메시지 # 4756 을 받았습니다.
ZeroMemory(struct)가 도움이 됩니다. 그래서 아직 고정이 안 된 건가요?
감사해요
ZeroMemory(판매)를 추가해 보십시오.
이 문제를 해결했습니다. 다음 빌드를 기다리세요.주문을 작성하는 정확한 방법을 따랐지만 동일한 오류가 있습니다. 어떻게 왔어요? 빌드 597을 사용하고 있습니다.
2012.02.26 20:08:18 코어 1 2012.02.23 08:00:00 경고: 구매 주문 요청을 완료할 수 없습니다 - 오류:4756
2012.02.26 20:08:18 코어 1 2012.02.23 08:00:00 시장 매수 실패 0.10 EURUSD sl: 1.32438 tp: 1.33738 [지원되지 않는 충전 모드]
if(구매_조건_3 && 구매_조건_4)
{
// 열린 매수 포지션이 있습니까?
if(구매_개봉)
{
Alert("우리는 이미 매수 포지션을 가지고 있습니다!!!");
반품; // 새로운 매수 포지션을 열지 않음
}
제로메모리(mrequest);
mrequest.action = TRADE_ACTION_DEAL; // 즉시 주문 실행
mrequest.type = ORDER_TYPE_BUY; // 주문 구매
mrequest.symbol = _심볼; // 통화 쌍
mrequest.deviation=0; // 현재 가격과의 편차
mrequest.price = NormalizeDouble(latest_price.ask,_Digits); // 최근 호가
mrequest.volume = 많은; // 거래할 랏 수
mrequest.tp = NormalizeDouble(latest_price.ask + TKP*_Point,_Digits); // 이익을 취하다
mrequest.sl = NormalizeDouble(latest_price.ask - STP*_Point,_Digits); // 손절매
mrequest.type_filling = ORDER_FILLING_AON ; // 주문 실행 유형
//--- 주문 보내기
주문 보내기(mrequest,mresult);
// 결과 코드 가져오기
if(mresult.retcode==10009 || mresult.retcode==10008) //요청 완료 또는 주문 완료
{
Alert("티켓 번호로 구매 주문이 성공적으로 접수되었습니다:",mresult.order,"!!");
}
또 다른
{
Alert("구매 주문 요청을 완료할 수 없습니다. -error:",GetLastError());
재설정 마지막 오류();
반품;
}
- www.mql5.com
MQL5 참조(오늘 방금 업데이트된 최신 버전)에 더 이상 ORDER_FILLING_AON이 없지만 ORDER_FILLING_FOK를 사용하더라도 여전히 오류 4756이 발생합니다. 조언을 부탁드립니다.
식별자 | 설명 |
ORDER_FILLING_FOK | 거래는 주문 지정 가격보다 같거나 더 나은 가격으로 지정된 수량으로 독점적으로 실행될 수 있습니다. 주문 기호에 충분한 양의 제안이 없으면 주문이 실행되지 않습니다. 이 유형의 채우기는 SYMBOL_TRADE_EXECUTION_INSTANT 또는 SYMBOL_TRADE_EXECUTION_REQUEST 실행 모드에서 사용됩니다. |
ORDER_FILLING_IOC | 주문 지정 가격과 같거나 더 나은 가격으로 최대 시장 규모로 거래를 실행하기로 약정하는 것입니다. 이 경우 채워지지 않은 볼륨에 대한 추가 주문은 이루어지지 않습니다. 이 유형의 채우기 는 거래 서버의 기호 설정에 따라 SYMBOL_TRADE_EXECUTION_MARKET 및 SYMBOL_TRADE_EXECUTION_EXCHANGE 실행 모드에서 사용됩니다. |
ORDER_FILLING_RETURN | 주문 지정 가격과 같거나 더 나은 가격으로 최대 시장 규모로 거래를 실행하기로 약정하는 것입니다. 이 경우 채워지지 않은 볼륨에 대한 추가 주문이 이루어집니다. 이 유형의 채우기는 보류 중인 주문( TRADE_ACTION_PENDING )에만 사용됩니다. |
안녕하세요, MT5를 포기하고 MT4로 돌아가기 전에 의견이 있으십니까? 감사합니다! 나는 실제로 둘 다 처음이지만 MT5가 매우 새롭다는 것을 알고 있지만 먼저 MT5를 시도해 볼 것입니다.
mrequest 전에 다음을 추가하십시오.
ZeroMemory (mrequest); ZeroMemory (mresult);
나는 당신과 똑같은 문제를 겪었고 그것은 나를 위해 고쳤습니다.
지금 같은 문제가 있습니다.
나의 전문 고문들은 매우 잘 일하고 있었다. 하지만 지금은 모두 테스터를 통과할 수 없습니다.
파일을 컴파일하면 다음 메시지가 표시됩니다.
' ORDER_FILLING_AON ' - 선언되지 않은 식별자
이 문제는 어떻게 해결할 수 있나요??
II 이것은 터미널 업데이트의 결과입니까? (버전 5.00 빌드 642)
(2012년 4월 24일)
누군가가 나를 도울 수 있기를 바랍니다.
- www.mql5.com
mrequest 전에 다음을 추가하십시오.
나는 당신과 똑같은 문제를 겪었고 그것은 나를 위해 고쳤습니다.
안녕하세요, 코드에 이 2줄을 추가했지만 오류 4756은 여전히 여기에 있습니다(Trade request Sending fail).
정확히 어디에 2줄을 추가해야 합니까? mrequest와 관련된 항목이 이미 있습니다. 둘 다 추가해도 저에게는 아무 것도 변경되지 않습니다. 도움을 주셔서 감사합니다.
rel.5 빌드 842를 실행 중입니다.
ZeroMemory (mrequest); ZeroMemory (mresult);
-------------------------------------------------- ----------------------------------
if (조건1)
{
판매.액션 = TRADE_ACTION_DEAL;
판매 유형 = ORDER_TYPE_SELL;
판매.심볼 = _심볼;
판매 편차 = 0;
판매 가격 = NormalizeDouble(mtick.bid,_Digits);
판매량 = 0.1;
Sell.tp = NormalizeDouble(sell.price - mtp*_Point,_Digits);
Sell.sl = NormalizeDouble(sell.price + msl*_Point,_Digits);
Sell.type_filling = ORDER_FILLING_AON ;
if(OrderSend(판매,결과_판매)==거짓)
{
Print("오류 #로 인해 OrderSend가 실패했습니다.",GetLastError());
재설정 마지막 오류();
}
}