코딩하는 방법? - 페이지 153

 
Roger09:
씹다

이 시도:

#property copyright "Copyright ?2004, MetaQuotes Software Corp."

#property link "http://www.metaquotes.net/"

#property show_inputs

bool result;

extern double OverSymbolDel = 1; //0:FASLE ; 1: TRUE

//+------------------------------------------------------------------+

//| script "delete pending order" |

//+------------------------------------------------------------------+

int start()

{

for (int number=OrdersTotal()-1; number >= 0; number--)

{

OrderSelect(number,SELECT_BY_POS,MODE_TRADES);

if((OrderType()==OP_BUY) || (OrderType()==OP_SELL) ) continue;

if (OverSymbolDel ==0&& Symbol()==OrderSymbol() ) delPending();

if (OverSymbolDel ==1) delPending();

}

}

//+------------------------------------------------------------------+

void delPending()

{

OrderPrint();

int ticket =OrderTicket();

result=OrderDelete(ticket);

if (!result) Print("Error when delete Order ", GetLastError() );

}

if ( (OverSymbolDel ==0 ) && (Symbol()==OrderSymbol() ) delPending();

로 변경

if ( (OverSymbolDel ==0 ) && (Symbol()==OrderSymbol() ) ) delPending();

 

GetClientRect???

차트의 클라이언트 좌표를 얻고 싶은데 어떻게 해야 하나요?

OBJPROP_CORNER를 사용하지 않고 오른쪽 아래 좌표를 알고 싶습니다.

안부입니다.

 

유 h1개

가장 좋은 것을 수정하도록 도와주세요.

 

논리에 대한 도움말

안녕하세요 여러분,

코드 로직에 대해 약간의 도움을 받고 싶습니다. 내가 보고 있는 시스템의 EA를 구축하려고 하지만 매수 및 매도 신호 에 대한 논리를 작성하는 방법에 대해 약간 의아해합니다. 다음은 MQL로 변환하려는 의사 논리입니다.

구매 논리:

If (MA_1 > MA_2) and (Previous(MA_1 < MA_2)) // A moving average cross mean we have a "GET READY" signal

// Once we have a "GET READY" signal the following conditions need to be true

// in order for the system to create a "BUY_SIGNAL".

// Note: the following conditions do not necessarily have to become true on the exact same bar,

but need to trigger true within + or - 2 bars of the "GET READY" bar.

( CLOSE > MA3 ) // Price closes above a MA

( CCI Crosses above the ZERO line ) // CCI crosses up above zero

( Fast Stochastic crosses above Slow Stochastic ) // Stochastic triggers to the up side

Sell Logic은 Buy Logic의 반대입니다.

신호를 운동하기 위해 MQL 'IF' 및 'LOOP' 문으로 변환된 논리만 있으면 전체 EA 코드가 필요하지 않습니다. 이 스레드에 이미 있는 많은 예제에서 OpenOrder 코드 등을 알아낼 수 있다고 생각합니다.

누구든지 도움을 주시면 감사하겠습니다.

감사해요,

목시

 

가장 좋은 방법은 메타에디터 도움말 파일을 살펴보는 것입니다.

iMa, iStochastic 및 iCCI와 같은 기능 을 살펴보십시오. 여기에는 예제가 있으며 이를 정보와 결합하면 모든 EA의 코드를 보고 쉽게 얻을 수 있습니다.

행운을 빕니다

럭스

 
luxinterior:
가장 좋은 방법은 메타에디터 도움말 파일을 살펴보는 것입니다.

iMa, iStochastic 및 iCCI와 같은 기능을 살펴보십시오. 여기에는 예제가 있으며 이를 정보와 결합하면 모든 EA의 코드를 보고 쉽게 얻을 수 있습니다.

행운을 빕니다

럭스

안녕하세요 럭스입니다.

답장을 보내 주셔서 감사합니다. 개별 iMA 문 등을 연습할 수 있습니다. 문제는 신호가 트리거되면 다른 시간 표시줄을 참조하는 방법입니다. 예를 들어... GET READY 신호가 있는 경우 다른 표시기에 대해 이전 2개 막대와 이후 2개 막대(총 5개 막대)를 확인하여 다음 막대가 열렸을 때 매수 신호 가 있음을 확인해야 합니다. 내가 이해하고 있는지 확실하지 않습니다 !!

나는 그것이 ... 처리되는 막대 전후에 막대를 참조해야 할 때 필요한 FOR 루프 등을 어떻게 구성합니까?

문안 인사,

목시

 
Moxy:
안녕하세요 럭스입니다.

답장을 보내 주셔서 감사합니다. 개별 iMA 문 등을 연습할 수 있습니다. 문제는 신호가 트리거되면 다른 시간 표시줄을 참조하는 방법입니다. 예를 들어... GET READY 신호가 있는 경우 다른 표시기에 대해 이전 2개 막대와 이후 2개 막대(총 5개 막대)를 확인하여 다음 막대가 열렸을 때 매수 신호가 있음을 확인해야 합니다. 내가 이해하고 있는지 확실하지 않습니다 !!

나는 그것이 ... 처리되는 막대 전후에 막대를 참조해야 할 때 필요한 FOR 루프 등을 어떻게 구성합니까?

문안 인사,

목시

iMA()에서 shift 변수를 사용하여 이 작업을 수행합니다. Open, High, Low, Close 값으로 이 작업을 수행할 수도 있습니다. 즉, 현재 막대에서 3 막대 떨어진 Close[3]입니다.

 

이동의 이동 평균

좋아, 코드에 약간의 도움이 필요합니다. MA 주변의 평균 이동 집합을 결정하려고 합니다. 그래서 가장 오래된 BAR에서 위와 아래의 이동을 찾아 배열에 넣은 다음 해당 배열의 평균을 구합니다.

여기에 내가 시작하는 코드가 있으며 완료하는 데 약간의 도움이 필요합니다.

더블 AverageMove()

{

int cbars = iBars(Symbol(),EntryTimeFrame);

int counted_bars = 0, RangeCounter=0,ndx=0,iLimit=0;

이중 검색,averagemove,pHValue,pLValue,MAvalue,RangeValue[],EntryPoint,cHigh,cLow;

부울 재설정, TradeShort, TradeLong;

iLimit=바-1;

if(Symbol() != "AUDNZD") return(0);

for(ndx=0; ndx<iLimit; ndx++)

{

MA값 = iMA(Symbol(),EntryTimeFrame,EntryMAInterval,0,MovingAverageType,PRICE_MEDIAN,ndx);

pH값 = 높음[ndx];

pL값 = 낮음[ndx];

if(MA값 pL값)

{

if(Symbol() =="AUDNZD") Print("MAValue="+MAvalue+" pHValue="+pHValue+" plValue="+pLValue);

재설정 = 참;

if(진입점 > 0 && cHigh > 0)

{

범위 카운터++;

RangeValue[RangeCounter]=cHigh - 진입점;

}

if(진입점 > 0 && cLow > 0)

{

범위 카운터++;

RangeValue[RangeCounter]=진입점 - cLow;

}

진입점 = MA값;

}

if(pHValue < MAvalue && 리셋) TradeShort = true;

if(pLValue > MAvalue && 재설정) TradeLong = true;

if(장기 거래)

{

재설정 = 거짓;

c높음 = pH값;

}

if(공매도)

{

재설정 = 거짓;

cLow = pL값;

}

}

ArraySetAsSeries(범위 값, 참);

retval=iMAOnArray(범위 값, 범위 카운터,13,1,PRICE_MEDIAN,0);

Print("평균 이동"+retval);

}

 

차트에서 클라이언트 영역을 알고 싶습니다.

안녕하세요,

차트에서 클라이언트 영역을 알고 싶습니다.

조언 부탁드립니다.

왼쪽 상단 모서리의 점이 (0,0)이라고 가정하고 오른쪽 하단의 좌표를 알려주십시오.

이 경우 ObjectSet("",OBJPROP_CORNER,3)을 사용하면 안 됩니다.

감사합니다.

 

목시,

내가 당신을 올바르게 이해했다면 EA의 줄에 대해 이 줄을 코딩해야 할 것입니다.

예시

MA1, 인덱스-1 이전

MA1, 지금 인덱스

MA1, 인덱스+1 이후

당신은 거기에 기본이 있습니다