묻다! - 페이지 130

 
Dave137:

현재 Color(s) 1 & 2 모두 그래프에서 '검은색'으로 표시됩니다!!

전문가 전문가가 이 문제를 해결하는 데 도움을 줄 수 있나요???

미리 감사합니다!

색상 Color1;

색상 Color2;

FerruFx

 

누군가 "OrderModify 오류 1" 문제를 제거하는 방법을 설명해줄 수 있습니까? 나는 찾고 있었고 NormalizeDouble()이 필요하지만 여기에서 달까지 모든 것을 정규화했지만 여전히 오류가 발생합니다.

일단 이해하면 이해할 수 있을 것 같아요. 누군가 도와주세요. 감사해요.

나는 또한 "일치하지 않는 데이터 오류(2008.04.16 07:30에서 볼륨 제한 31 초과)"가 발생합니다. 그것이 무엇인지 아는 사람이 있다면 도움을 주시면 감사하겠습니다.

 
FerruFx:
색상 Color1;

색상 Color2;

FerruFx

SetIndexStyle(0,DRAW_ARROW,0,star_size,색상 Color1);

SetIndexStyle(1,DRAW_ARROW,0,별 크기,색상 색상2);

여기저기서 색상을 삽입하려고 시도했고 한 번에 한 단계씩 시도했고 위 두 문장에 대해 오류가 발생했습니다.

이것은 정말 나를 혼란스럽게 합니다. 더 이상 제안 사항이 있습니까?

데이브

 

@xerof123 - 이 오류는 개설 주문이 이미 가지고 있는 것과 동일한 값으로 주문을 수정하려고 할 때 발생합니다. 다른 문제는 서로 다른 시간대 간의 가격 불일치입니다. 이를 제거하려면 History Center 메뉴를 통해 모든 틱 데이터를 삭제하고 재생성하십시오.

@Dave137 - 시작하는 곳에서 color1, color2가 string 유형으로 정의된 반면 이들은 color 유형입니다. 'properties' 정의에서 'color1' 키워드는 값을 할당하는 것이므로 나중에 color1, color2를 정의할 때 c1,c2처럼 쉽게 호출될 수 있습니다. 또한 init() 함수에서 수동으로 설정하기 때문에 처음부터 'properties color1'을 사용할 필요가 없습니다. 또한 '#property indicator buffers x' 및 'indicatorbuffers(x)' 사용법에 대한 다른 지표를 확인하십시오 ...

 

오믈렛님, 감사합니다.

나는 내가 할 수 있는 모든 것을 시도했고, 지금 6일 동안 쉬지 않고 그것에 있었고 그것은 나를 이겼습니다...

여기 코드를 보고 비참한 "OrderModify 오류 1"이 표시되는 이유를 알려주세요.

나는 정상화를 시도했고, 다른 논리를 시도했고, 심지어 맥주를 제공하려고 시도했습니다.

당신의 도움에 정말 감사드립니다. 감사해요

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

{

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

if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)

{

if(OrderType()<=OP_SELL) ordtotal++;

if(주문 유형()==OP_BUY)

{

if(bep==true && Bid-OrderOpenPrice()>=Locked_at*Point)

{

if(OrderModify(OrderTicket(),0,OrderOpenPrice()+7*Point,0,0,0)==true) bep=false;

반환(0);

}

if((NormalizeDouble( Bid, Digits)-OrderOpenPrice())>=TS_start*Point)

{

if((NormalizeDouble( Bid, Digits)-NormalizeDouble( OrderStopLoss(), Digits)) > TS_start*Point &&

(NormalizeDouble( Bid, Digits)-NormalizeDouble( OrderStopLoss(), Digits) - TS_start*Point)>=(TrailEvery-1)*Point)

{

if (TS_start > OrderStopLoss()+Point)

{

OrderModify(OrderTicket(),OrderOpenPrice(), Ask - Point*TS_start ,0,0,SkyBlue);

반환(0);

}

}

}

}

if(주문 유형()==OP_SELL)

{

if(bep==true && OrderOpenPrice()-NormalizeDouble( 묻기, 숫자) >= Locked_at*Point)

{

if(OrderModify(OrderTicket(),0,OrderOpenPrice()-7*Point,0,0,0)==true) bep=false;

반환(0);

}

if((OrderOpenPrice()-NormalizeDouble( 묻기, 숫자)) >= TS_start*Point)

{

if((NormalizeDouble( OrderStopLoss(), Digits)-NormalizeDouble( Ask, Digits)) > TS_start*Point &&

(NormalizeDouble( OrderStopLoss(), Digits)-NormalizeDouble( Ask, Digits)-TS_start*Point)>=(TrailEvery-1)*Point)

{

if (TS_start > OrderStopLoss() +Point)

{

OrderModify(OrderTicket(),OrderOpenPrice(), 묻기 + 포인트*TS_start ,0,0,주황색);

리턴(0);

}

}

}

}

}

}

 
Dave137:
SetIndexStyle(0,DRAW_ARROW,0,star_size,색상 Color1);

SetIndexStyle(1,DRAW_ARROW,0,별 크기,색상 색상2);

여기저기서 색상을 삽입하려고 시도했고 한 번에 한 단계씩 시도했고 위 두 문장에 대해 오류가 발생했습니다.

이것은 정말 나를 혼란스럽게 합니다. 더 이상 제안 사항이 있습니까?

데이브

아니요, 잘못된 변경을 수행합니다.

다음을 변경해야 합니다.

문자열 Color1;

문자열 Color2;

이로 인해:

색상 Color1;

색상 Color2;

그게 다야.

FerruFx

 

양초가 상단 또는 하단 라인 에 닿고 기울기가 위에서 아래로 또는 그 반대로 변경될 때 이 표시기를 경고하도록 하려면 어떻게 해야 합니까?

#property copyright "ANG3110@latches.com"

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

#속성 표시기_차트_창

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

extern int 시간=24;

extern color col=아쿠아;

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

이중 lr,lr0,lrp;

더블 sx,sy,sxy,sx2,aa,bb;

정수 p,s이름,fs;

정수 f, f0, f1;

이중 dh,dl,dh_1,dl_1,dh_2,dl_2;

정수 ai_1, ai_2, bi_1, bi_2;

더블 하이,라이,디,dli,dhm,dlm,ha0,hap,la0,lap;

두 배 price_p1,price_p0,price_p2,price_01,price_00,price_02;

정수 p1,p0,p2,fp;

//********************************************

정수 초기화() {

p=시간*60/기간();

if (fs==0) {sName=CurTime(); fs=1;}

반환(0);}

//************************************

정수 초기화() {

ObjectDelete("1"+sName);

ObjectDelete("0"+이름);

ObjectDelete("2"+sName); }

//************************************

정수 시작() {

정수 i,n;

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

if (f==1) {

p1=iBarShift(Symbol(),Period(),ObjectGet("1"+sName,OBJPROP_TIME1));

p0=iBarShift(Symbol(),Period(),ObjectGet("0"+sName,OBJPROP_TIME1));

p2=iBarShift(Symbol(),Period(),ObjectGet("2"+sName,OBJPROP_TIME1));

if (fp==0 && p!=p1) {p=p1; fp=1;}

if (fp==0 && p!=p0) {p=p0; fp=1;}

if (fp==0 && p!=p2) {p=p2; fp=1;}

}

//================================================== ====

sx=0; sy=0; sxy=0; sx2=0;

(n=0; n<=p; n++) {sx+=n; sy+=닫기[n]; sxy+=n*닫기[n]; sx2+=MathPow(n,2);}

aa=(sx*sy-(p+1)*sxy)/(MathPow(sx,2)-(p+1)*sx2); bb=(sy-aa*sx)/(p+1);

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

(i=0; i<=p; i++) {

lr=bb+aa*i;

dh=높음-lr; dl=낮음-lr;

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

if (i<p/2) {if (i==0) {dh_1=0.0; dl_1=0.0; ai_1=나; bi_1=나;}

if (dh>=dh_1) {dh_1=dh; ai_1=나;}

if (dl<=dl_1) {dl_1=dl; bi_1=나;}}

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

if (i>=p/2) {if (i==p/2) {dh_2=0.0; dl_2=0.0; ai_2=나; bi_2=나;}

if (dh>=dh_2) {dh_2=dh; ai_2=나;}

if (dl<=dl_2) {dl_2=dl; bi_2=i;}}}

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

lr0=bb; lrp=bb+aa*(i+p);

//================================================== ===

if (MathAbs(ai_1-ai_2)>MathAbs(bi_1-bi_2)) f=1;

if (MathAbs(ai_1-ai_2)<MathAbs(bi_1-bi_2)) f=2;

if (MathAbs(ai_1-ai_2)==MathAbs(bi_1-bi_2)) {if (MathAbs(dh_1-dh_2)=MathAbs(dl_1-dl_2)) f=2;}

//================================================== =

if (f==1) {

(n=0; n<=20; n++) { f1=0;

(i=0; i<=p; i++) {hai=높음[ai_1]*(i-ai_2)/(ai_1-ai_2)+높음[ai_2]*(i-ai_1)/(ai_2-ai_1);

if (i==0 || i==p/2) dhm=0.0;

if (High-hai>dhm && i<p/2) {ai_1=i; f1=1;}

if (High-hai>dhm && i>=p/2) {ai_2=i; f1=1;} }

if (f==0) break;}

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

(i=0; i<=p; i++) {hai=높음[ai_1]*(i-ai_2)/(ai_1-ai_2)+높음[ai_2]*(i-ai_1)/(ai_2-ai_1);

dli=로우하이;

if (i==0) dlm=0.0; if (dli<dlm) dlm=dli;}

ha0=높음[ai_1]*(0-ai_2)/(ai_1-ai_2)+높음[ai_2]*(0-ai_1)/(ai_2-ai_1);

hap=높음[ai_1]*(p-ai_2)/(ai_1-ai_2)+높음[ai_2]*(p-ai_1)/(ai_2-ai_1);

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

price_p1=합;

price_p0=hap+dlm/2;

price_p2=hap+dlm;

price_01=하0;

price_00=ha0+dlm/2;

price_02=ha0+dlm;

}

//================================================== =

만약 (f==2) {

(n=0; n<=20; n++) { f1=0;

for (i=0; i<=p; i++) {lai=Low*(i-bi_2)/(bi_1-bi_2)+Low*(i-bi_1)/(bi_2-bi_1);

if (i==0 || i==p/2) dlm=0.0;

if (Low-lai<dlm && i<p/2) {bi_1=i; f1=1;}

if (Low-lai=p/2) {bi_2=i; f1=1;}}

if (f==0) 중단;}

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

for (i=0; i<=p; i++) {lai=Low*(i-bi_2)/(bi_1-bi_2)+Low*(i-bi_1)/(bi_2-bi_1);

dhi=하이라이;

if (i==0) dhm=0.0; if (dhi>dhm) dhm=dhi;}

la0=낮음*(0-bi_2)/(bi_1-bi_2)+낮음*(0-bi_1)/(bi_2-bi_1);

랩=낮음*(p-bi_2)/(bi_1-bi_2)+낮음*(p-bi_1)/(bi_2-bi_1);

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

price_p1=랩;

price_p0=랩+dhm/2;

price_p2=랩+dhm;

price_01=라0;

price_00=la0+dhm/2;

price_02=la0+dhm;

}

//================================================== =====================================

ObjectCreate("1"+sName,2, 0,시간[p],price_p1,시간[0],price_01);

ObjectCreate("0"+sName,2, 0,시간[p],price_p0,시간[0],price_00);

ObjectCreate("2"+sName,2, 0,시간[p],price_p2,시간[0],price_02);

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

ObjectSet("1"+sName,OBJPROP_COLOR,col);

ObjectSet("1"+sName,OBJPROP_STYLE,STYLE_SOLID);

ObjectSet("0"+sName,OBJPROP_COLOR,col);

ObjectSet("0"+sName,OBJPROP_STYLE,STYLE_DOT);

ObjectSet("2"+sName,OBJPROP_COLOR,col);

ObjectSet("2"+sName,OBJPROP_STYLE,STYLE_SOLID);

ObjectSet("0"+sName,OBJPROP_WIDTH,1); // 라인의 너비를 제어

ObjectSet("1"+sName,OBJPROP_WIDTH,2);

ObjectSet("2"+sName,OBJPROP_WIDTH,2);

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

ObjectSet("1"+sName,OBJPROP_TIME1,시간[p]);

ObjectSet("1"+sName,OBJPROP_PRICE1,price_p1);

ObjectSet("1"+sName,OBJPROP_TIME2,시간[0]);

ObjectSet("1"+sName,OBJPROP_PRICE2,price_01);

ObjectSet("0"+sName,OBJPROP_TIME1,시간[p]);

ObjectSet("0"+sName,OBJPROP_PRICE1,price_p0);

ObjectSet("0"+sName,OBJPROP_TIME2,시간[0]);

ObjectSet("0"+sName,OBJPROP_PRICE2,price_00);

ObjectSet("2"+sName,OBJPROP_TIME1,시간[p]);

ObjectSet("2"+sName,OBJPROP_PRICE1,price_p2);

ObjectSet("2"+sName,OBJPROP_TIME2,시간[0]);

ObjectSet("2"+sName,OBJPROP_PRICE2,price_02);

//================================================== ===================

f=1; p1=p; p0=p; p2=p; fp=0;

//************************************************ *************************************

반환(0);}

//================================================== =======================================

 
xerof123:
오믈렛님, 감사합니다.

나는 내가 할 수 있는 모든 것을 시도했고, 지금 6일 동안 쉬지 않고 그것에 있었고 그것은 나를 이겼습니다...

여기에서 코드를 보고 비참한 "OrderModify 오류 1"이 나타나는 이유를 알려주십시오.

나는 정상화를 시도했고, 다른 논리를 시도했고, 심지어 맥주를 제공하려고 시도했습니다.

당신의 도움에 정말 감사드립니다. 감사해요

내가 쓴 것을 다시 읽으십시오 - 가격을 수정해야 하는지 여부를 먼저 확인하지 않고 Modify() 함수 를 호출하고 있습니다...

 

오믈렛은 귀하의 질문에 매우 잘 대답했습니다. 나는 그 사람이 성인의 인내심을 가지고 있다고 말해야합니다. 나는 그를 칭찬합니다.

그가 이것에 대해 말하고 있는 요점을 더 잘 설명하기를 바랍니다.

지금 기본적으로 말하는 것은 2 > 1 다음 수정(변경) X=2이지만 문제는 X가 이미 2와 같으므로 수정(변경)을 요청하는 것은 이미 무엇과 같기 때문에 올바르지 않다는 것입니다. 당신은 그것을 수정하려고합니다.

변경하려는 것과 같지 않은지 확인 하고 그렇지 않은 경우에만 수정을 시도하면 됩니다.

더 명확합니까?

행운을 빕니다

럭스

 

EA를 처음 사용하는 경우 도움이 필요합니다.

친애하는 코더 구루,

.mql4 파일을 전문가 폴더에 복사하고 옵션 섹션에서 자동 거래가 허용되는지 확인했지만 백 테스트를 할 때 거래가 생성되지 않습니다. 인터넷에서 몇 가지 무료 EA를 시도했지만 문제는 매번 발생했습니다. 백 테스트 데이터가 차트에 로드된 것을 볼 수 있지만 거래가 없으므로 보고서에서 모든 수치는 0입니다. 제가 뭔가 잘못한 것이 틀림없으니 도움이 되셨으면 합니다. 미리 감사드립니다.

문안 인사,

짜이1994