if (Curtime() > 마지막 시간 + 30*60)
기본적인 질문...
안녕,
저는 MetaTrader를 처음 접했고 기본적인 질문이 있습니다:
내 Expert-Advisor의 열린 위치를 한 번에 1개의 위치로만 제한하고 싶습니다. 하지만 심볼당 해당 제한을 원하므로 다른 심볼에 대해 다른 Expert-Advisor를 실행하면 해당 위치에 대한 새 위치가 열립니다. 상징.
다시 말해서, 나는 모든 심볼에 대해 1개의 포지션을 열 수 있기를 원하지만 심볼에 대해 1개 이하의 포지션을 열 수 있기를 원합니다.
어떻게하니 ?
"totaltrades" 기능 을 보았지만 문서에서 이 기능이 현재 기호가 아닌 계정에 적용된다는 것을 이해했습니다.
따라서 "totaltrades=1이면 종료합니다." 모든 기호에 대해 한 번에 1개의 위치가 발생합니다...
10배!
모든 기호에 대해 1개의 위치
int total=OrdersTotal();
if(total<1)
{
.
.
.
}
그러나 하나의 기호 또는 하나의 차트에 대한 하나의 위치가 열렸 습니까?
음, 차트 당 하나가 최고입니다 ...
그러나 할 수 없다면 기호당 1개도 좋습니다...
기호당 1개
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==Symbol() )
return(0);
....엄청난!
10X 많이!
그리고 나는 다시 당신을 귀찮게 할 것입니다 ... (:
차트별로도 할 수 있습니까?
나는 다른 시간 간격 차트에 대해 다른 시스템을 가지고 있기 때문에 ...
죄송합니다 이해가 안되네요
안녕
코드에서 다음을 수행하고 싶습니다.
'마지막 거래 이후 30분 동안 거래하지 마세요'
따라서 내 지표에 현재 거래에 다시 추가해야 한다고 표시되면 30분이 지난 경우에만 같은 방향으로 거래합니다.
나는 다음을 수행하고 있습니다 - 이 코드는 아직 작동하지 않습니다 - 그것은 단지 디자인 단계에 있습니다 - 마지막 주문에 30분을 추가하는 방법을 모르겠습니다
이것은 현재 쌍에서만 작동하는 EA용입니다.
정수 시작()
{
int cnt, 티켓, 총계, stop1;
정적 날짜/시간 지난 시간
총계=주문총계();
for(cnt=0;cnt<전체;cnt++)
{
주문 선택(cnt, SELECT_BY_POS, MODE_TRADES);
//마지막 OrderClose 시간 확인
if (OrderCloseTime > 마지막 시간 + 30)
{
마지막 시간 = 주문 마감 시간
}//if (OrderCloseTime)
}
이제 나는 말하고 싶다
if (Curtime() > 마지막 시간 + 30분)
{
계속 거래
}
도와주세요