초보 프로그래머에게 OrderSelect 기능을 사용하여 마지막으로 마감된 거래를 선택하는 방법을 알려주시겠습니까? 나는 이것을 시도했다 : OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), 그러나 분명히 이런 방식으로 주문이 선택되지 않았습니다 ...
Moslift : 초보 프로그래머에게 OrderSelect 기능을 사용하여 마지막으로 마감된 거래를 선택하는 방법을 알려주시겠습니까? 나는 이것을 시도했다 : OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), 그러나 분명히 이런 방식으로 주문이 선택되지 않았습니다 ...
-페이지#4 GetTypeLastClosePos - 마지막으로 닫힌 위치의 유형을 반환하거나 -1 GetTypeLastOpenPos - 마지막 열린 위치의 유형을 반환하거나 -1 isCloseLastPosByStop - 스톱으로 마지막 위치를 닫기 위한 플래그를 반환합니다. isCloseLastPosByTake - 마지막 위치를 테이크에 의해 닫는 플래그를 반환합니다. isLossLastPos - 마지막 위치 손실 플래그를 반환합니다. isTradeToDay - 오늘의 거래 플래그를 반환합니다. NumberOfBarCloseLastPos - 마지막 위치의 닫는 막대 번호 또는 -1을 반환합니다. NumberOfBarOpenLastPos - 마지막 위치의 열린 막대 번호 또는 -1을 반환합니다. NumberOfLossPosToday - 오늘 마감된 손실 위치 수를 반환합니다. PriceCloseLastPos - 마지막으로 마감된 포지션의 종가를 반환합니다.
Moslift : 초보 프로그래머에게 OrderSelect 기능을 사용하여 마지막으로 마감된 거래를 선택하는 방법을 알려주시겠습니까? 나는 이것을 시도했다 : OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), 그러나 분명히 이런 방식으로 주문이 선택되지 않았습니다 ...
다음과 같이 시도하십시오.
int i, j;
datetime t;
for (i= 0 ; i< OrdersHistoryTotal (); i++) { // Цикл по закрытым ордерам терминалаif ( OrderSelect (i,SELECT_BY_POS,MODE_HISTORY)) { // Если выбран ордер...if ( OrderType ()> 1 ) continue ; // ... если его тип не Buy и не Sell, переходим к следующему...if ( OrderSymbol ()!= Symbol ()) continue ; // ... если его символ не соответствует символу графика - к следующему...if ( OrderMagicNumber ()!=Magic) continue ; // ... если его магик не соответствует магику советника (в переменной Magic) - к следующемуif ( OrderCloseTime ()>t) { // ... если время его закрытия больше предыдущего
t= OrderCloseTime (); // ... сохраним новое наибольшее время закрытия, ...
j=i; // ... сохраним индекс ордера в массиве закрытых ордеров
}
}
}
if ( OrderSelect (j,SELECT_BY_POS,MODE_HISTORY)) // На этом этапе j содержит индекс последнего закрытого ордераPrint ( "Выбран последний закрытый ордер с тикетом " , OrderTicket ());
루프에서 구매 또는 판매만 확인된다는 점에 유의하십시오. 이를 바탕으로 다른 유형의 주문을 선택할 수 있기를 바랍니다.
그때 실생활에서 시작하면 "스텝*포인트가 > 현재 손실이 되면 이익이 온다" 라고 하면 수익이 고정 마이너스가 되는 모습을 보게 되는데... 브로커의 업무로 인해.. .. 미리 체크해서 도착해서 일부러 테이크 넣어달라고 해서 ...........
아이디어 번호 5 TS - 자체 패턴(샘플). 그림도 있습니다. TS와 거래기준은 간단하고
좋은 프로그래머는 많은 시간을 들이지 않을 것입니다. 결과를 보고 싶어 하는 사람이 없습니까?
그런 레버리지로 데모 계정을 열어보십시오 - 1:1. 그리고 테스트합니다.
아마 효과가 있을까요?
초보 프로그래머에게 OrderSelect 기능을 사용하여 마지막으로 마감된 거래를 선택하는 방법을 알려주시겠습니까? 나는 이것을 시도했다 : OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), 그러나 분명히 이런 방식으로 주문이 선택되지 않았습니다 ...
여기를 보십시오: https://www.mql5.com/ru/forum/131859
-페이지#4
GetTypeLastClosePos - 마지막으로 닫힌 위치의 유형을 반환하거나 -1
GetTypeLastOpenPos - 마지막 열린 위치의 유형을 반환하거나 -1
isCloseLastPosByStop - 스톱으로 마지막 위치를 닫기 위한 플래그를 반환합니다.
isCloseLastPosByTake - 마지막 위치를 테이크에 의해 닫는 플래그를 반환합니다.
isLossLastPos - 마지막 위치 손실 플래그를 반환합니다.
isTradeToDay - 오늘의 거래 플래그를 반환합니다.
NumberOfBarCloseLastPos - 마지막 위치의 닫는 막대 번호 또는 -1을 반환합니다.
NumberOfBarOpenLastPos - 마지막 위치의 열린 막대 번호 또는 -1을 반환합니다.
NumberOfLossPosToday - 오늘 마감된 손실 위치 수를 반환합니다.
PriceCloseLastPos - 마지막으로 마감된 포지션의 종가를 반환합니다.
초보 프로그래머에게 OrderSelect 기능을 사용하여 마지막으로 마감된 거래를 선택하는 방법을 알려주시겠습니까? 나는 이것을 시도했다 : OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), 그러나 분명히 이런 방식으로 주문이 선택되지 않았습니다 ...
다음과 같이 시도하십시오.
루프에서 구매 또는 판매만 확인된다는 점에 유의하십시오. 이를 바탕으로 다른 유형의 주문을 선택할 수 있기를 바랍니다.
추신 ... "내 무릎에"라고 썼는데 어딘가에 실수를 놓쳤을 수 있습니다 ...
이 기능이 작동하지 않는 이유와 작동시키는 방법을 알려주십시오.
nomer_sdelki=OrderSend( Symbol() ,OP_SELL,1,Bid,3,Bid-10*Point,Ask+10*Point,"내 주문 번호"+1,16384,0,Green);
-------------------------------------------------- -------------------------------------------------- --------------------
그리고 이것이 작동하는 방식입니다!
nomer_sdelki=OrderSend(Symbol(),OP_SELL,계수,입찰가,3,0,0,"내 주문 번호"+1,16384,0,녹색);
즉, 정류장이 설정되지 않은 경우 작동합니다.
-------------------------------------------------- -------------------------------------------------- --------------------------
이 기능도 작동하지 않습니다. 해결 방법은 무엇입니까?
OrderClose(nomer_sdelki, 계수, 입찰가, 3, 빨간색);
-------------------------------------------------- -------------------------------------------------- -------------------------------------------
그런 레버리지로 데모 계정을 열어보십시오 - 1:1. 그리고 테스트합니다.
아마 효과가 있을까요?
약간의 기적...
메시지가 있었는데 없었습니다...
답변: 꼭 필요한가요?