묻다! - 페이지 175

 

아 훨씬 좋은 방법입니다. 저는 if (Ask == OrderTakeProfit()) {..} 백 테스트할 때 약간 결함이 있다고 생각하는 모든 미결 주문을 순환하면서 만지작거리고 있었습니다. 감사해요!

 

문자열에 주석을 달 수 있는 숫자를 어떻게 주석 처리합니까?

문자열 2;

2="유로달러";

그래프에서 2가 EURUSD로 주석 처리되는 곳에 주석을 작성하려면 어떻게 해야 합니까?

도와주세요 - 혼란스럽습니다!

데이브

 

mql에서는 그렇게 할 수 없습니다.

mql에서 변수 이름은 숫자가 될 수 없고 숫자로 시작할 수도 없으므로 유일한 해결책은 "2" 앞에 일부 문자, 밑줄 또는 허용되는 문자를 추가하는 것입니다.

1Dave7:
문자열 2;

2="유로달러";

그래프에서 2가 EURUSD로 주석 처리되는 곳에 주석을 작성하려면 어떻게 해야 합니까?

도와주세요 - 혼란스럽습니다!

데이브
 

다음에 대해 내림차순으로 배열을 수행하려면 어떻게 해야 합니까?

더블 D0=0,D1=0,D2=0,D3=0,D4=0,D5=0,D6=0,D7=0);

D0=iCustom(NULL,0,"XYZ",0,0);

D1=iCustom(NULL,0,"XYZ",1,0);

D2=iCustom(NULL,0,"XYZ",2,0);

D3=iCustom(NULL,0,"XYZ",3,0);

D4=iCustom(NULL,0,"XYZ",4,0);

D5=iCustom(NULL,0,"XYZ",5,0);

D6=iCustom(NULL,0,"XYZ",6,0);

D7=iCustom(NULL,0,"XYZ",7,0);

(D0,D1,D2,D3,D4,D5,D6,D7) 값의 내림차순 배열을 어떻게 초기화합니까? 내 EA의 어레이 결과를 어떻게 처리합니까?

도움을 주셔서 감사합니다. 이 병목 현상을 극복할 수 있다면 매우 기쁠 것입니다!

데이브

 

정렬된 값만 필요한 경우 다음과 같이 할 수 있습니다.

double array[8];

array[0]=iCustom(NULL,0,"XYZ",0,0);

array[1]=iCustom(NULL,0,"XYZ",1,0);

array[2]=iCustom(NULL,0,"XYZ",2,0);

array[3]=iCustom(NULL,0,"XYZ",3,0);

array[4]=iCustom(NULL,0,"XYZ",4,0);

array[5]=iCustom(NULL,0,"XYZ",5,0);

array[6]=iCustom(NULL,0,"XYZ",6,0);

array[7]=iCustom(NULL,0,"XYZ",7,0);

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);

정렬된 값은 "배열" 배열에 있습니다.

1Dave7:
더블 D0=0,D1=0,D2=0,D3=0,D4=0,D5=0,D6=0,D7=0);

D0=iCustom(NULL,0,"XYZ",0,0);

D1=iCustom(NULL,0,"XYZ",1,0);

D2=iCustom(NULL,0,"XYZ",2,0);

D3=iCustom(NULL,0,"XYZ",3,0);

D4=iCustom(NULL,0,"XYZ",4,0);

D5=iCustom(NULL,0,"XYZ",5,0);

D6=iCustom(NULL,0,"XYZ",6,0);

D7=iCustom(NULL,0,"XYZ",7,0);

(D0,D1,D2,D3,D4,D5,D6,D7) 값의 내림차순 배열을 어떻게 초기화합니까? 내 EA의 어레이 결과를 어떻게 처리합니까?

도움을 주셔서 감사합니다. 이 병목 현상을 극복할 수 있다면 매우 기쁠 것입니다!

데이브
 
mladen:
정렬된 값만 필요한 경우 다음과 같이 할 수 있습니다.
double array[8];

array[0]=iCustom(NULL,0,"XYZ",0,0);

array[1]=iCustom(NULL,0,"XYZ",1,0);

array[2]=iCustom(NULL,0,"XYZ",2,0);

array[3]=iCustom(NULL,0,"XYZ",3,0);

array[4]=iCustom(NULL,0,"XYZ",4,0);

array[5]=iCustom(NULL,0,"XYZ",5,0);

array[6]=iCustom(NULL,0,"XYZ",6,0);

array[7]=iCustom(NULL,0,"XYZ",7,0);

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);

정렬된 값은 "배열" 배열에 있습니다.

와!!!!!!!!!!!! 나는 결코 그것을 알아내지 못했을 것입니다 - 전체 무리에게 감사합니다!!!

 

이 어레이가 작동하도록 도와주세요 - 의아해!!!

[/PHP] EUR=(iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //RED

GBP=(iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //LIME

double array[7];

array[0]=iCustom(NULL,0,"EURUSD",0,0);

array[1]=iCustom(NULL,0,"GBPUSD",1,0);

array[2]=iCustom(NULL,0,"AUDUSD",2,0);

array[3]=iCustom(NULL,0,"USDCHF",3,0);

array[4]=iCustom(NULL,0,"USDJPY",4,0);

array[5]=iCustom(NULL,0,"NZDUSD",5,0);

array[6]=iCustom(NULL,0,"USDCAD",6,0);

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);

a=array[0];b=array[1];c=array[2];d=array[3];e=array[4];f=array[5];g=array[6];

{

ObjectCreate("DISPLAY10", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY10", DoubleToStr(a,0), 10, "ArialBold", Red);//"EURUSD =" ,

ObjectSet("DISPLAY10", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY10", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY10", OBJPROP_YDISTANCE, 20);

//return(0);

}

{

ObjectCreate("DISPLAY20", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY20", DoubleToStr(b,0), 10, "ArialBold", Lime);//"GBPUSD =" ,

ObjectSet("DISPLAY20", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY20", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY20", OBJPROP_YDISTANCE, 40);

//return(0);

}

[PHP]

a,b에 대한 값을 가져와서 표시하려고 했지만 a에는 0, b에는 0 및 다른 모든 cf 값만 표시됩니다. 나는 통화의 오름차순을 얻기를 바랐다. 이것이 작동하지 않는 이유를 알아낼 수 있습니까???

도움이 되었으면 해서 맥주를 사주고 싶습니다!

 

다음과 같은 행을 확인하십시오.

array[0]=iCustom(NULL,0,"EURUSD",0,0);

그 줄은 "EURUSD"라는 표시기가 있고 일부 값을 가져와 "배열"의 첫 번째 요소에 할당하기 위해 호출하고 있음을 의미합니다. 존재하지 않는 경우(그 이름을 가진 표시기, 내가 참이라고 가정함) 배열 요소 에 값 0을 할당합니다. 그 줄로 정확히 무엇을 검색하려고 합니까?

1Dave7:
EUR=(iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //빨간색

GBP=(iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //라임

이중 배열[7];

array[0]=iCustom(NULL,0,"EURUSD",0,0);

array[1]=iCustom(NULL,0,"GBPUSD",1,0);

array[2]=iCustom(NULL,0,"AUDUSD",2,0);

array[3]=iCustom(NULL,0,"USDCHF",3,0);

array[4]=iCustom(NULL,0,"USDJPY",4,0);

array[5]=iCustom(NULL,0,"NZDUSD",5,0);

array[6]=iCustom(NULL,0,"USDCAD",6,0);

ArraySort(배열,WHOLE_ARRAY,0,MODE_ASCEND);

a=배열[0];b=배열[1];c=배열[2];d=배열[3];e=배열[4];f=배열[5];g=배열[6];

{

ObjectCreate("DISPLAY10", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY10", DoubleToStr(a,0), 10, "ArialBold", 빨강);//"EURUSD = ,

ObjectSet("DISPLAY10", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY10", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY10", OBJPROP_YDISTANCE, 20);

//반환(0);

}

{

ObjectCreate("DISPLAY20", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY20", DoubleToStr(b,0), 10, "ArialBold", Lime);//"GBPUSD = ,

ObjectSet("DISPLAY20", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY20", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY20", OBJPROP_YDISTANCE, 40);

//반환(0);

}

a,b에 대한 값을 가져와서 표시하려고 했지만 a에는 0, b에는 0 및 다른 모든 cf 값만 표시됩니다. 나는 통화의 오름차순을 얻기를 바랐다. 이것이 작동하지 않는 이유를 알아낼 수 있습니까???

도움이 되었으면 해서 맥주를 사주고 싶습니다!
 
mladen:
다음과 같은 행을 확인하십시오.
array[0]=iCustom(NULL,0,"EURUSD",0,0);
그 줄은 "EURUSD"라는 표시기가 있고 일부 값을 가져오고 "배열"의 첫 번째 요소에 할당하기 위해 호출하고 있음을 의미합니다. 존재하지 않는 경우(그 이름을 가진 표시기, 내가 참이라고 가정함) 배열 요소에 값 0을 할당합니다. 그 줄로 정확히 무엇을 검색하려고 합니까?

배열은 "EURUSD"에서 값을 가져온 다음 다른 통화에 비해 낮은 것에서 높은 순서로 오름차순을 수행한 다음 낮은 순위를 화면에 표시하는 것입니다. 다른 통화와 마찬가지로 EURUSD는 0.00을 제공합니까?? 내가 여기서 뭘 잘못하고 있니??

 

다음과 같이 하십시오.

array[0]=iClose("EURUSD",0,0); [/PHP]

and so on. That way array will be filled with close prices for symbols you select. If you are using a custom indicator then the form is the following :

[PHP]array[0]=iCustom("EURUSD",0,"indicator name",0,0);
1Dave7:
배열은 "EURUSD"에서 값을 가져온 다음 다른 통화에 비해 낮은 것에서 높은 순서로 오름차순을 수행한 다음 낮은 순위를 화면에 표시하는 것입니다. 다른 통화와 마찬가지로 EURUSD는 0.00을 제공합니까?? 내가 여기서 뭘 잘못하고 있니??