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

 

MT-4, 도와주세요.

MT-4- 도와주세요. 파일 교차를 DMI +와 DMI -로 만들고 싶습니다. ADX 없이 DMI+와 DMI-를 움직이는 순간에 신호를 갖고 싶습니다. 나는 그것에 대해 걱정합니다. 나는 이것을 아래에 작성하지만 MF4로 이동하려면 이 파일을 작성하십시오.

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

//| ADX크로스 전문가 |

//| Perky_z |

//| |

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

#property copyright "Perky_z@yahoo.com"

#속성 링크 "http://groups.yahoo.com/group/MetaTrader_Experts_and_Indicators/"

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

//| 함께 실행할 필요가 없는 ADXcrosses Indicator와 함께 경고 |

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

// + 및 - DI 라인의 교차에 대한 경고

// 15분 차트에서 사용합니다.

// 어느 시간대에나 좋아 보이지만

// 이 트리거를 확인하기 위해 다른 표시기를 사용합니다.

//---- 입력 매개변수

더블 b4plusdi,b4minusdi,nowplusdi,nowminusdi;

//----

//---- 표시기

코드 변경 기간 의 이 부분에서 원하는 대로(모든 라인에서 4개에 대해 14개 변경) 이것은 다이어그램을 배치하는 이 스케일에서 작동해야 합니다.

b4plusdi=iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,1);

nowplusdi=iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,0);

b4minusdi=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,1);

nowminusdi=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,0);

 

이것은 부분 로트를 닫고 있지만 ... 정확히 내가 예상 한 것을 수행하지 않습니다.

나는 그것이 무엇을 하는지 알 수 없지만 가격이 내가 원하는 곳이 아닐 때 1로트를 닫는 것 같습니다.

여기에서 문제를 볼 수 있습니다.

매수가 있고 가격이 .00071이 되면 1랏을 마감해야 합니다(1분 차트에서 테스트 중인 임의의 숫자임).

또는 매도가 있고 가격이 .00071 하락하면 1랏을 닫습니다.

그건 그렇고 5 자리 브로커를 사용합니다. 이 EA에서만 열린 거래가 1개뿐이므로 주문을 스크롤할 필요가 없습니다.

도움에 감사드립니다!

if (IsConnected() && IsTradeAllowed()) while (IsTradeContextBusy()) Sleep(75);

if (OrdersTotal()>0) {OrderSelect(0, SELECT_BY_POS,MODE_TRADES);

새로 고침 비율();

if (입찰가 >= (OrderOpenPrice()+ (.00071)) && OrderLots() == 2 && (OrderType() == OP_BUY)) {

OrderClose(OrderTicket(),1,Ask,10,R ed); }

if (요청 <= (OrderOpenPrice()- (.00071)) && OrderLots() == 2 && (OrderType() == OP_SELL)) {

OrderClose(OrderTicket(),1,Bid,10,B lue); }}

 

거래가 (한 번) 양의 이익을 가지지만 여전히 브로커의 정지 수준(후행은 아직 건드리지 않음)보다 낮을 때 손익분기점(이익=0)에 거래를 마감하는 코드를 만들 수 있습니까?

10포인트 StopLevel 브로커의 경우 후행 시스템은 이익이 최소 10포인트에 도달한 경우에만 작동할 수 있습니다.

여러 번 트랜잭션이 5 또는 8핍까지만 양수였다가 다시 SL에 도달하는 것을 보았습니다.

그래서 이것에 대해 생각하고 있지만 어떻게 해야할지 모르겠습니다.

Trailing Stop과 같은 EA의 손익분기점 코드를 만드는 방법은 있지만 최소 브로커의 StopLevel 아래에서는 작동합니까?

 

스페이스침프에

주문을 열 때 매수 요청 및 매도 입찰을 사용합니다. 가까울 때 - 반대.

 

네 아주 유용할 것 같아요

FulltimeTrader:2009년 6월

 

이 인기 트렌드 표시기에 이메일 알림을 추가하려면 도움이 필요합니다.

이 인기 트렌드 표시기에 이메일 알림을 추가하려면 도움이 필요합니다.

여기에 줄과 첨부 파일이 있습니다.

만약 (경향>0)

{

if (신호>0 && UpTrendBuffer[shift+1]==-1.0)

{

UpTrendSignal[시프트]=bsmin[시프트];

UpTrendBuffer[시프트]=bsmin[시프트];

if(라인>0) UpTrendLine[shift]=bsmin[shift];

if (SoundON==true && shift==0 && !TurnedUp)

{

Alert("Bands up on ",Symbol(),"-",Period());

켜짐 = true;

거절 = 거짓;

}

}

또 다른

{

UpTrendBuffer[시프트]=bsmin[시프트];

if(라인>0) UpTrendLine[shift]=bsmin[shift];

UpTrendSignal[shift]=-1;

}

if (신호==2) UpTrendBuffer[시프트]=0;

DownTrendSignal[시프트]=-1;

DownTrendBuffer[시프트]=-1.0;

DownTrendLine[shift]=EMPTY_VALUE;

}

만약 (추세<0)

{

if (신호>0 && DownTrendBuffer[shift+1]==-1.0)

{

DownTrendSignal[시프트]=bsmax[시프트];

DownTrendBuffer[시프트]=bsmax[시프트];

if(라인>0) DownTrendLine[shift]=bsmax[shift];

if (SoundON==true && shift==0 && !TurnedDown)

{

Alert("Bands down on ",Symbol(),"-",Period());

거절 = 사실;

켜짐 = 거짓;

}

}

또 다른

{

DownTrendBuffer[시프트]=bsmax[시프트];

if(Line>0)DownTrendLine[shift]=bsmax[shift];

DownTrendSignal[시프트]=-1;

}

if (신호==2) DownTrendBuffer[시프트]=0;

UpTrendSignal[shift]=-1;

UpTrendBuffer[시프트]=-1.0;

UpTrendLine[shift]=EMPTY_VALUE;

}

}

리턴(0);

}

파일:
toptrend.mq4  6 kb
 

여기에서 문제가 보이지 않습니까!!!?? 아아아아아

내가 뭘 잘못하고 있는지 모르겠어..

이것은 특정 TP에서 절반을 닫지 않는 것 같습니다

if (OrdersTotal()>0) {

주문선택(0, SELECT_BY_POS,MODE_TRADES);

틱 = OrderTicket(); // 선택한 주문

팁 =OrderType(); // 선택한 주문의 유형

가격 = OrderOpenPrice(); // 선택한 주문의 가격

로트 = OrderLots();

if (Bid >= (Price + (TakeProfit * Point)) && Lot == 2 && (Tip == OP_BUY)) {

주문 닫기(틱,1,입찰가,10,빨간색); }

if (Ask <= (Price - (TakeProfit * Point)) && Lot == 2 && (Tip == OP_SELL)) {

OrderClose(Tick,1,Ask,10,Blue); }}

BID와 ASK가 정확합니까? 아마 아닐거야

 

내 ea에 도움이 필요해

내 ea를 하나의 거래로만 제한하는 코드가 필요합니다. 그것의 스캘퍼, 나는 한 번만 거래를 원합니다. 거래가 끝나면 미루고 다음날 다시 부착합니다. 아무도 이것에 나를 도울 수 있습니까 ??

 

이 스레드의 어디에....

이 스레드의 어딘가에서이 질문을 받았어야했습니다 ...

누군가 1) 숨겨진 SL을 가지고 2) 미결 주문의 일부(50%) 만 마감 하고 3) 이동 평균을 넘은 후 나머지 주문을 마감하는 코드로 나를 도와줄 수 있습니까?

첨부된 것은 EA이지만 영어로 되어 있지 않으므로 이것이 무엇을 하는지 또는 다른 코드를 어디에 추가해야 하는지 완전히 이해할 수 없습니다.

도와주셔서 감사합니다.

파일:
 

모든 새로운 Tic에서 표시기 재로딩을 방지하는 방법

표시기가 각각의 새 틱과 함께 다시 로드되도록 하는 iCustom을 호출하는 데 내가 무엇을 잘못했는지 알려주십시오. ( 백테스팅 은 전체 보기 창을 해당 표시기를 수백 번 반복하여 채웁니다.)

내 "시작 프로그램"에서 EntryDir() 메서드(다음)를 사용하여 거래 기회를 확인하고 싶습니다.

정적 날짜 시간 지속됨;

if ( CurTime()-lastsd>2*60*Period() )

{

if(ZZ>=높음[1] && EntryDir()==OP_SELL)

{

if(pos == 1) {DoExit(OP_BUY);}

PrepNewOrder(OP_SELL);

lastsd=CurTime();

}

if(ZZ!=0 && ZZ<=낮음[1] && EntryDir()==OP_BUY)

{

if(pos == -1) {DoExit(OP_SELL);}

PrepNewOrder(OP_BUY);

lastsd=CurTime();

}

}

int EntryDir()

{

부울 buyOK=거짓, SellOK=거짓;

이중 흐름 = iCustom(NULL, 0, "Dtron", 0,0) + iCustom(NULL, 0, "Dtron" 1,0);

이중 트리거 = iCustom(NULL, 0, "Dtron", 1,0) + iCustom(NULL, 0, "Dtron", 3,0);

이중 반전 = iCustom(NULL, 0, "Dtron", 4,0);

if((반전==0 && 흐름 + 트리거>0) || 반전>0) entryDir=OP_BUY;

if((반전==0 && 흐름 + 트리거<0) || 반전<0) entryDir=OP_SELL;

반환(입력 디렉터리);

}

수백 개의 Dtron 표시창이 여기에서 열리지 않도록 하는 방법을 알려주세요.