묻다! - 페이지 62

 
niva:
2차원 배열에 저장된 2차원 데이터 테이블이 있습니다. 해당 데이터 테이블의 열에 따라 정렬하는 것과 같은 조작을 하고 싶습니다.

명령어의 ArraySort() 함수는 첫 번째 차원에서 배열을 정렬할 수 있습니다. 그것이 나를 위해 어떻게 작동하는지 알 수 없습니다.

MetaTrader의 데이터 테이블 정렬에 대한 제안 사항이 있습니까?

내가 들어본 모든 표준 배열 정렬 기능은 첫 번째 차원만 정렬합니다. 직접 만들어야 할 수도 있습니다. 또는 아직 시도하지 않은 경우 웹에서 고급 C++ 정렬 알고리즘을 확인하십시오.

 

여러 계정을 사용하는 여러 EA

여보세요,

저는 Metatrader4(및 fx 거래)를 처음 사용합니다. 내가 알고 싶은 것은 하나의 Metatrader4 플랫폼에서 동일한 통화 쌍 을 사용하여 동일한 입금액의 여러 데모 계정을 사용하여 여러 EA를 테스트할 수 있는지 여부입니다.

예를 들어, 한 플랫폼에서 GBPUSD만 사용하여 각각 $1000의 자체 데모 계정에 할당된 5개의 다른 EA가 있어 일정 기간 동안의 성능을 비교할 수 있습니다.

내 StrategyBuilder - Metatrader - Demo에서 이 작업을 시도했을 때 한 계정의 EA 설치가 다음 계정에 로그인할 때 이월되거나 이월된 계정에서 하나의 EA를 비활성화하여 다른 EA를 설치하는 것을 발견했습니다. 첫 번째 계정이 비활성화되었습니다.

동일한 계정의 다른 통화 쌍에 대해 다른 EA를 가질 수 있다는 것을 알고 있지만 이로 인해 다양한 EA의 성능을 동일한 통화 쌍과 비교할 수 없습니다.

내 행동 방침을 백테스팅하고 있습니다. 그렇다면 시작하는 방법에 대한 정보를 제공하십시오.

많은 도움을 주셔서 감사합니다.

자유 FX

 

자유 FX,

귀하의 활성 계정은 귀하의 터미널에서 실행되는 EA에 의해 관리되므로 귀하가 요청한 것을 수행할 수 없다고 생각합니다. 그러나 컴퓨터에 여러 개의 MT4 복사본을 설치하고 각 데모 계정 에 대해 하나씩 실행할 수 있습니다.

 

라이언클레파스,

다음은 현재 가격 조치(입찰/매도)를 기반으로 보류 중인 주문 을 입력하는 코드입니다.

내 질문:

현재 가격이 아닌 Daily 피벗에서 보류 중인 주문을 입력하기를 원합니다.

내가 이것을 시도하고 알아낼 수 있는 몇 가지 예를 알려줄 수 있습니까? 아니면 이 코드에 통합할 수 있는 높은 낮은 피벗 논리가 있고 입찰/요청 대신 참조로 가리킬 수 있습니까?

도와주셔서 감사합니다.

}

OrderSend(Symbol(),

OP_BUYSTOP,

lots,

Ask+open_long*Point, // Spread included

slippage,

Bid+(open_long-stop_long)*Point,

Bid+(open_long+take_profit)*Point,

NULL,

magic,

0,

FireBrick);

OrderSend(Symbol(),

OP_SELLSTOP,

lots,

Bid-open_short*Point,

slippage,

Ask-(open_short-stop_short)*Point,

Ask-(open_short+take_profit)*Point,

NULL,

magic,

0,

FireBrick);

clear_to_send = false;

}

 

noLagMACD

누구든지 이 코드 조각에 무엇이 잘못되었는지 말해 줄 수 있습니까? Makegrid193에 noLagMACD를 통합하려고 합니다. 컴파일 및 실행되며 myWantLongs 및 myWantShorts의 설정을 전혀 변경하지 않으므로 생성된 주문이 없습니다.

if(MACDNoLag 사용)

{

int limit=막대;

myWantLongs = 거짓;

myWantShorts = 거짓;

for(i=0; i<한계; i++)

{

FastEMABuffer=iMA(NULL,PERIOD_M5,emaFast,0,MODE_EMA,PRICE_CLOSE,i);

SlowEMABuffer=iMA(NULL,PERIOD_M5,emaSlow,0,MODE_EMA,PRICE_CLOSE,i);

}

for(i=0; i<한계; i++)

{

EMA=iMAOnArray(FastEMABuffer,0,emaFast,0,MODE_EMA,i);

ZeroLagEMAp=FastEMABuffer+FastEMABuffer-EMA;

EMA=iMAOnArray(SlowEMABuffer,0,emaSlow,0,MODE_EMA,i);

ZeroLagEMAq=SlowEMABuffer+SlowEMABuffer-EMA;

MACDBuffer=ZeroLagEMAp - ZeroLagEMAq;

}

더블 테스터1, 테스터2, 테스터3;

테스터1 = MACDBuffer[0];

테스터2 = MACDBuffer[1];

테스터3 = MACDBuffer[2];

if( (tester1 > 0.0) && (tester2 <= 0.0) ) // 교차

{

CloseAllPendingOrders();

if(닫기OpenPositions == true)

{

ClosePendingOrdersAndPositions();

}

if(wantLongs==true)

{

myWantLongs = 사실;

}

myWantShorts = 거짓;

}

if( (tester1 = 0.0) ) // 크로스 다운

{

CloseAllPendingOrders();

if(닫기OpenPositions == true)

{

ClosePendingOrdersAndPositions();

}

if(wantShorts==true)

{

myWantShorts = 사실;

}

myWantLongs = 거짓;

}

if( (tester1 > 0.0) && (tester2 > 0.0) && (tester3 > 0.0) && (wantLongs==true) ) // 0보다 훨씬 높습니다.

{

myWantLongs = 사실;

}

if( (tester1 < 0.0) && (tester2 < 0.0) && (tester3 < 0.0) && (wantShorts==true) ) // 0보다 훨씬 낮습니다.

{

myWantShorts = 사실;

}

}

 

괜찮아요

나는 Time[]과 iComplex를 발견했고 전에 올렸던 그 엉망이 되었습니다.

if(MACDNoLag 사용)

{

if(newbar != 시간[0])

{

newbar=시간[0];

myWantLongs = 거짓;

myWantShorts = 거짓;

MACD_Main = iCustom(NULL, 0, "ZeroLag MACD ", FastEMA, SlowEMA, SignalEMA, 0, 1);

if(MACD_메인 > 0)

{

if(!MACDup)

{

if(CloseOpenPositions == true)

{

ClosePendingOrdersAndPositions();

}

또 다른

{

CloseAllPendingOrders();

}

}

MACDup = 참;

myWantShorts = 거짓;

if(wantLongs==true)

{

myWantLongs = 사실;

}

}

if(MACD_메인 < 0)

{

if(MACDup)

{

if(CloseOpenPositions == true)

{

ClosePendingOrdersAndPositions();

}

또 다른

{

CloseAllPendingOrders();

}

}

MACDup = 거짓;

myWantLongs = 거짓;

if(wantShorts==true)

{

myWantShorts = 사실;

}

}

}

}

이거 너무 재밌어요!!! 이 EA로 좋은 결과를 얻으면 게시하겠습니다.

 
proverbs:
라이언클레파스,

다음은 현재 가격 조치(입찰/매도)를 기반으로 보류 중인 주문을 입력하는 코드입니다.

내 질문:

현재 가격이 아닌 Daily 피벗에서 보류 중인 주문을 입력하기를 원합니다.

내가 이것을 시도하고 알아낼 수 있는 몇 가지 예를 알려줄 수 있습니까? 아니면 이 코드에 통합할 수 있는 높은 낮은 피벗 논리가 있고 입찰/요청 대신 참조로 가리킬 수 있습니까?

도와주셔서 감사합니다.

}

OrderSend(Symbol(),

OP_BUYSTOP,

lots,

Ask+open_long*Point, // Spread included

slippage,

Bid+(open_long-stop_long)*Point,

Bid+(open_long+take_profit)*Point,

NULL,

magic,

0,

FireBrick);

OrderSend(Symbol(),

OP_SELLSTOP,

lots,

Bid-open_short*Point,

slippage,

Ask-(open_short-stop_short)*Point,

Ask-(open_short+take_profit)*Point,

NULL,

magic,

0,

FireBrick);

clear_to_send = false;

}

[/code]

각 pviot 포인트는 가격 값입니다. 그리고 보류 중인 주문은 활성화될 특정 가격에 배치되어야 합니다. 따라서 보류 중인 주문을 할 때 진입 가격을 선택한 피벗 수준으로 설정하십시오. 그런 다음 주문의 진입 가격과 관련하여 손절매와 이익실현을 설정하십시오.

[암호]

}

주문 보내기(기호(),

OP_BUYSTOP,

많이,

피벗레벨가자여기 ,

미끄러짐,

pivotLevelGoesHere -(stop_long*Point),

pivotLevelGoesHere +(take_profit*Point),

없는,

마법,

0,

내화 벽돌);

주문 보내기(기호(),

OP_SELLSTOP,

많이,

또 다른PivotLevelGoesHere ,

미끄러짐,

anotherPivotLevelGoesHere+ (stop_short*Point),

anotherPivotLevelGoesHere -(take_profit*Point),

없는,

마법,

0,

내화 벽돌);

clear_to_send = 거짓;

}

 

그렇게 생각했는데 확인해주셔서 감사합니다. 피벗을 생성하여 다음으로 향할 곳을 만드는 논리가 확실하지 않습니다.

시간 내 줘서 고마워.

 

엘리엇 파동 표시기

각 웨이브를 그리고 레이블을 지정하는 엘리엇 웨이브 표시기가 있는 사람이 있습니까? 나는 ew 오실레이터와 다른 것을 보았지만 그들은 트릭을 수행하지 않았습니다. 어쩌면 각 패턴을 그리고 레이블을 지정하는 고조파 패턴 표시기???

 
proverbs:
그렇게 생각했는데 확인해주셔서 감사합니다. 피벗을 생성하여 다음으로 향할 곳을 만드는 논리가 확실하지 않습니다. 시간 내 줘서 고마워.

다음 링크에서 사용할 수 있는 피벗을 그리는 지표가 많이 있습니다. 또는 EA에서 직접 피벗을 계산할 수도 있지만 그것은 어리석은 일이라고 생각합니다.

http://www.forexmt4.com/

피퍼 박사:
각 웨이브를 그리고 레이블을 지정하는 엘리엇 웨이브 표시기가 있는 사람이 있습니까? 나는 ew 오실레이터와 다른 것을 보았지만 그들은 트릭을 수행하지 않았습니다. 어쩌면 각 패턴을 그리고 레이블을 지정하는 고조파 패턴 표시기???

위의 링크도 도움이 될까요?

사유: