코딩 도움말 - 페이지 422

 
Mastercash:
나는 use moneymanagement를 false로 설정했습니다.... 하지만 랏 매개변수에 대해서는 랏이 아니라 미결 주문 수에 관한 것입니다. ea가 5개 이상의 주문을 여는 것을 원하지 않습니다......주어진 시간에 , 그렇기 때문에 입력 매개변수에서 NumberofTrades 매개변수를 5로 설정했지만 여전히 감히 5개 이상의 주문을 받아 내 자금 관리를 위협합니다!

마스터캐시

다음은 테스트한 결과입니다.

보시다시피 동일한 심볼과 동일한 매직 넘버에 대해 동시에 5개 이상의 주문을 열지 않았습니다.

파일:
5_test.gif  87 kb
 

알겠습니다...다른 기호에 대해 5개 이상의 주문을 받는 것을 원하지 않습니다.예를 들어, 지난 20분 이내에 10개 기호에서 거래 신호가 있다고 가정해 보겠습니다....EA는 처음 5개의 거래 신호만, 그 다음 5개의 주문 중 하나가 마감되면 하나를 더 받아 다양한 기호에 대한 현재 실행 중인 주문이 5를 초과하지 않도록 합니다. 그것은 또한 잘못된 동일한 기호에서 5개의 동일한 주문을 받습니다.

mladen:
마스터캐시

다음은 테스트한 결과입니다.

보시다시피 동일한 심볼과 동일한 매직 넘버에 대해 동시에 5개 이상의 주문을 열지 않았습니다.
 
Mastercash:
알겠습니다...다른 기호에 대해 5개 이상의 주문을 받는 것을 원하지 않습니다.예를 들어, 지난 20분 이내에 10개 기호에서 거래 신호가 있다고 가정해 보겠습니다....EA는 처음 5개의 거래 신호만, 그 다음 5개의 주문 중 하나가 마감되면 하나를 더 받아 다양한 기호에 대한 현재 실행 중인 주문이 5를 초과하지 않도록 합니다. 그것은 또한 잘못된 동일한 기호에서 5개의 동일한 주문을 받습니다.

모든 기호에 대해 최대 5개의 주문을 포함하려면 144행( if( OrderSymbol() != Symbol() ) 계속; )으로 이동하여 삭제하십시오. 그리고 모든 심볼의 모든 인스턴스에 대한 매직 넘버를 동일하게 유지합니다(모든 심볼에서 해당 EA에 의해서만 열린 주문을 계산할 수 있도록)

 

안녕 믈라덴

나는 더 높은 TF로 설정했을 때 상쾌하지 않은 멋진 인디를 가지고 있습니다.

편집하지 않을 때 차트에서 볼 수 있듯이 계속 붙어 있습니다. 그 문제를 해결하는 데 도움을 주시겠습니까?

지표와 스크린샷을 추가합니다

 
wolfsch:
안녕 믈라덴

나는 더 높은 TF로 설정했을 때 상쾌하지 않은 멋진 인디를 가지고 있습니다.

편집하지 않을 때 차트에서 볼 수 있듯이 계속 붙어 있습니다. 그 문제를 해결하는 데 도움을 주시겠습니까?

지표와 스크린샷을 추가합니다

볼프쉬

이는 시각적 백 테스트에서만 발생할 수 있으며(즉, 메타 트레이더가 최소 7-8개월 동안 수정하지 않은 오류이며 지표가 아닌 메타 트레이더의 오류임) 시각적으로 백 테스트 할 때 모든 다중 시간 프레임 지표에 발생합니다.

정상적인 사용에서는 정상적으로 작동합니다(만일을 대비하여 지금 테스트했으며 모든 것이 일반 차트에서 작동해야 하는 대로 작동함)

 

감사합니다. 작업해 보겠습니다. 다시 연락드리겠습니다........

mladen:
모든 기호에 대해 최대 5개의 주문을 포함하려면 144행( if( OrderSymbol() != Symbol() ) 계속; )으로 이동하여 삭제하십시오. 그리고 모든 심볼의 모든 인스턴스에 대한 매직 넘버를 동일하게 유지합니다(모든 심볼에서 해당 EA에 의해서만 열린 주문을 계산할 수 있도록)
 
mladen:
TFI

버퍼 3이 올바른 것입니다(즉, 상승 기울기에 대해 1 값을 갖고 하락 기울기에 대해 -1 값을 갖는 "추세" 버퍼). 교대 1과 2를 사용하고 있으므로 첫 번째 닫힌 막대를 테스트하고 있습니다.

코드의 일부를 구입하는 것이 좋습니다.

당신은 생략

if(추세!=추세)

당신에게 문제를 일으킬 수있는 판매 부분 개미에서

안녕하세요 믈라덴입니다.

도움을 주셔서 대단히 감사합니다. 에 따라 코드를 변경했습니다.

귀하의 제안에 따르면 거래가 원활하고 핍 계산도 괜찮습니다.

그러나 이제 더 이상 단기 거래를 열지 않습니다(전략일 수도 있음 ;-)).

그것은 단지 롱 포지션을 닫는 것입니다.

다시 한 번 조언 부탁드려도 될까요?

extern double maxshorttrades = 2;

extern double maxlongtrades = 2;

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

//| BUY |

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

for (i=OrdersTotal()-1;i>=0; i--)

if(OrderType()==OP_BUY && OP_BUY<maxlongtrades) break; // Check Traded Positions.

{

if(trendc!=trendp)

{

if(trendc==1 && (CCIFilter<80)) // code for buy

OpenBuy();

return(0);

}

openedOrders++;

}

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

//| SELL |

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

for (i=OrdersTotal()-1;i>=0; i--)

if(OrderType()==OP_SELL && OP_SELL<maxshorttrades) break; // Check Traded Positions.

{

if(trendc!=trendp)

{

if(trendc==-1 && (CCIFilter>80)) // code for sell

OpenSell();

return(0);

}

openedOrders++;

}

}

자세한 내용은 첨부된 스크린샷을 참조하십시오.

미리 감사합니다!

친절하게도,

TFI

파일:
backtest.jpg  163 kb
 
tfi_markets:
안녕하세요 믈라덴입니다.

도움을 주셔서 대단히 감사합니다. 에 따라 코드를 변경했습니다.

귀하의 제안에 따르면 거래가 원활하고 핍 계산도 괜찮습니다.

그러나 이제 더 이상 단기 거래를 열지 않습니다(전략일 수도 있음 ;-)).

그것은 단지 롱 포지션을 닫는 것입니다.

다시 한 번 조언 부탁드려도 될까요?

extern double maxshorttrades = 2;

extern double maxlongtrades = 2;

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

//| BUY |

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

for (i=OrdersTotal()-1;i>=0; i--)

if(OrderType()==OP_BUY && OP_BUY<maxlongtrades) break; // Check Traded Positions.

{

if(trendc!=trendp)

{

if(trendc==1 && (CCIFilter<80)) // code for buy

OpenBuy();

return(0);

}

openedOrders++;

}

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

//| SELL |

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

for (i=OrdersTotal()-1;i>=0; i--)

if(OrderType()==OP_SELL && OP_SELL<maxshorttrades) break; // Check Traded Positions.

{

if(trendc!=trendp)

{

if(trendc==-1 && (CCIFilter>80)) // code for sell

OpenSell();

return(0);

}

openedOrders++;

}

}

자세한 내용은 첨부된 스크린샷을 참조하세요.

미리 감사합니다!

친절하게도,

TFI

TFI

다음과 같이 시도하십시오.

extern double maxshorttrades = 2;

extern double maxlongtrades = 2;

//-----------------------------------------------------

//

//-----------------------------------------------------

int clongs = 0;

int cshorts = 0;

for (i=OrdersTotal()-1;i>=0; i--)

{

if(OrderType()==OP_BUY) clongs++; // Check Long Traded Positions.

if(OrderType()==OP_SELL) cshorts++; // Check Short Traded Positions.

}

if(trendc!=trendp)

{

if(clongs < maxlongtrades && trendc== 1 && (CCIFilter<80)) OpenBuy();

if(cshorts 80)) OpenSell();

// Check the CCI condition

// it is not symetrical to buy condition

}

 

믈라덴,

숫자 144를 변경하고 심볼 인스턴스 전체에 매직 넘버 "MagicNumber"를 통합했습니다.... 이제 한 번에 최대 5개의 거래가 필요하지만 이제는 동일한 심볼에 대해 동일한 거래를 반복합니다. 예를 들어 EURUSD에서 SELL 거래 신호를 받으면 해당 EURUSD 매도 주문 을 5번 합니다. 다음과 같은 실시간 주문 이미지를 참조하세요.

Mastercash:
감사합니다. 작업해 보겠습니다. 다시 연락드리겠습니다........
파일:
apcorrimage.png  39 kb
 
Mastercash:
mladen, 숫자 144를 변경하고 심볼 인스턴스 전체에 매직 넘버 "MagicNumber"를 통합했습니다....이제 한 번에 최대 5개의 거래가 필요하지만 이제 동일한 심볼에 대해 반복 거래를 반복합니다. 동시에, 예를 들어 EURUSD에 대한 SELL 거래 신호를 수신하면 해당 EURUSD 매도 주문을 5번 배치합니다. 다음과 같은 실시간 주문 이미지를 참조하세요.

그것은 해당 코드 부분에 의존하지 않습니다

같은 막대와 같은 기호에서 주문을 열지 않으려면 나머지 코드에 체크 를 추가해야 합니다.