아니요 . . . 당신은 배울 필요가 있습니다. . . 변경을 위해 스스로 노력을 기울이고 책( https://book.mql4.com// )을 읽으십시오. 설명서( https://docs.mql4.com// )를 읽으십시오. . . 장기 및 정렬 거래에 대해 서로 다른 매직 번호를 갖는 것은 어리석은 일이며 필요 하지 않습니다. . .
<-------------------- can consider to use if(OrdersTotal()>0..then proceed ---------------->double lastOpenedOpenPriceBuy() <----- what a name...confusing, maybe.
{
double ret = 0 ;
datetime time= 0 ; <---- can consider setting Lowest Limit to -9999, at least -1, rather than 0. for ( int i= 0 ; i< OrdersTotal (); i++) { <----- do consider counting down.OrderSelect (i, SELECT_BY_POS, MODE_TRADES); <------ This returns some BOOLEAN result.then what?-----(?)if ( OrderType ()==OP_BUY && OrderOpenTime ()>time) { <------ This can return runtime OrderSelect ERR bec. of above line (?). ------ (!)
time = OrderOpenTime ();
ret = OrderOpenPrice ();
}
}
return (ret); <------ return double as UnNormalized price. you sure about this?
}
<-------------------- if(OrdersTotal()>0..then 계속 진행 -------------- 사용을 고려할 수 있습니다. -->doublelastOpenedOpenPriceBuy()<----- 이름이 뭔가... 혼란스럽습니다.
{이중ret =0;
날짜시간 시간=0;<---- 0이 아닌 -1 이상인 -9999로 최저 한도를 설정할 수 있습니다.주문 오픈 시간이 <= 0일 수 없습니다 .for(inti=0; i<OrdersTotal(); i++) {<----- 카운트다운을 고려하십시오.다른 것은 없습니다.주문 선택(i, SELECT_BY_POS, MODE_TRADES);<------ 이것은 일부 BOOLEAN 결과를 반환합니다. 그러면 어떻게 될까요?-----(?)루프에 주문이 존재해야 하는 경우 주문이 존재할 때 OrderSelect는 오류를 일으키지 않습니다. 루프에 없으면 이 행은 실행되지 않습니다.if(OrderType()==OP_BUY &&OrderOpenTime()>time) {<------ 이것은 런타임 OrderSelect ERR bec를 반환할 수 있습니다. 위의 줄(?) ------ (!)마지막 줄과 같은 이유입니다.
시간 = OrderOpenTime ();
ret = 주문오픈가격
();
}
}
리턴(ret);<------ 이중 반환 비정규화 가격으로. 당신은 이것에 대해 확신합니까?첫 번째 줄에서 이미 ret = 0을 정의합니다.
}
주문 선택(i, SELECT_BY_POS, MODE_TRADES);<------루프에 주문이 존재해야 하는 경우 주문이 존재할 때 OrderSelect는 오류를 일으키지 않습니다. 루프에 없으면 이 행은 실행되지 않습니다.
나는 당신의 이 라인에 주문이 없을 때 루프 밖으로 사라지고 주문이 있을 때 다시 나타나는 Houdini 능력이 있다고 생각합니다.
네 말 뜻은:
제발 내가 당신의 sulution를 볼 필요가제발 내가 당신의 sulution를 볼 필요가
아마도 이런 식으로 작동할 것입니다.
if ( ( (LastOpenPrice(OP_SELL)+ 0.0030 )< MarketInfo ( "EURUSD" ,MODE_BID) )&&( LastOpenPrice(OP_SELL)>0) ) <--------------- 0+0.0030 =0.0030<Bid: TRUE // 작동할 것 같습니다.
{ BUY( "EURUSD" ,B_EURUSD_LS_1,B_EURUSD_TP_1,B_EURUSD_SL_1,B_EURUSD_TS_1, "만약 (
아마도 이런 식으로 작동할 것입니다.
if ( ( (LastOpenPrice(OP_SELL)+ 0.0030 )< MarketInfo ( "EURUSD" ,MODE_BID) )&&( LastOpenPrice(OP_SELL)>0) ) <--------------- 0+0.0030 =0.0030<Bid: TRUE // 작동할 것 같습니다.
{ BUY( "EURUSD" ,B_EURUSD_LS_1,B_EURUSD_TP_1,B_EURUSD_SL_1,B_EURUSD_TS_1, "만약 (
내가 "당신의 게임 계획은 무엇입니까?"라고 물을 때 진심이야. 다시 말해서, 당신의 전략은 무엇입니까?
마지막 시가 가 없을 때 거래를 하고 싶지 않다면 그렇게 고려할 수 있습니까?
if(LastOpenPrice(OP_SELL) <=0) { 반환? 무엇을? -----판매의 경우
if(LastOpenPrice(OP_BUY) <=0) { return?...또는 무엇을 할까요? ------ 구매 케이스
그런 다음 나머지 코드가 진행됩니다....
이와 같은 오류로 인해 코드의 여기 저기에 "구멍을 채울" 수 없습니다. 당신의 전략이 망가진 것 같습니다.
이러한 종류의 오류는 더 높은 수준에서 전략을 수정할 필요가 있음을 "알려줍니다" ---> 거래할 때(그리고 하지 말아야 할 때). 이에 대한 답, 아이디어 등이 있습니까?
네 말 뜻은:
제발 내가 당신의 sulution를 볼 필요가나는 이것에 대해 언급하는 것을 완전히 잊어버렸지만 이것은 관련된 것 전체와 영원을 위해 가장 중요 합니다. 당신이 MY=당신의 솔루션을 보고 싶다는 생각을 하는 것은 완전히 미친 짓입니다. 나는 그렇지 않습니다.
당신은 지구 어디에 있습니까? 날 뭘로 봐요? 당신의 수호천사, 무당, 개인 지니 등?
당신이 당신의 머리에 무엇을 집어넣든, 나는 당신의 정보를 위해 정말로 도울 수 없습니다.
얘들아,
아래 기능 을 확인하십시오(정확한 경우). 이 조건을 수행해야 합니다.
if ( lastOpenedOpenPriceBuy()-lastOpenedOpenPriceSell() )>=0.0060
{ 뭔가 해 }
내가 첫 번째 것을 도울 수 있고 나머지는 다른 사람들이 올 수 있습니다.
점에 유의하시기 바랍니다:
내가 이 조건을 붙일 때
작동하지 않지만 조건을 하나 더 추가하면
괜찮아 보입니다 (lastOpenedOpenPriceBuy()> 0 )보이 오 보이, 당신은 단순히 놀랍습니다. esp를 지적해 주셔서 감사합니다.