코딩 도움말 - 페이지 95

 

Dear All, Forex에 대한 게시물의 첫 단계이므로 내가 너무 틀린 말을 해도 친절하게 대해 주세요...

이 웹사이트는 외환에 대해 배울 수 있는 최고의 장소 중 하나이며 몇 년 전부터 읽고 있습니다. 이 링크에 주의를 기울이고 싶습니다:codebase.mql4.com/5900

ea는 저자: StJojo(2009.08.17 11:30)의 RUBBERBANDS_2 EA입니다. 모든 통화 쌍 에서 (최소한의 최적화 작업 후) 작동하는 방식이 매우 흥미롭습니다. 기본적으로 (표현을 허용합니다..) 반자동 자동화 시동기로 사용할 수 있습니다. 실제로 횡보 시장에서 잘 작동하기 때문에 횡보 가능성이 높을 때 뉴스 간격에서 활성화 될 수 있음을 발견했습니다. 코드가 작성자에 의해 오픈 소스로 만들어졌다고 생각하기 때문에 아이디어가 마음에 드시면 특정 시간/분에서 특정 시간/시간/분에 "정지"로 작동하도록 변수를 추가하고 싶습니다( 즉, 현재 세션이 종료될 때 이 EA를 정지합니다). 이것은 ea의 "사전 프로그래밍" 작업 시간을 훨씬 더 용이하게 할 것입니다. 위 링크에서 파일을 첨부했습니다.

차트에서 새 항목을 읽는 데 사용하는 "forex_news_market_clock" 표시도 첨부했습니다.

이 사이트에서 만든 작업에 대해 모든 사람에게 감사합니다(물론 인터넷 전체에서...). 누군가가 도움이 되기를 바랍니다. 감사합니다.

 
vitoingletto:
Dear All, Forex에 대한 게시물의 첫 단계이므로 내가 너무 틀린 말을 해도 친절하게 대해 주세요...

이 웹사이트는 외환에 대해 배울 수 있는 최고의 장소 중 하나이며 몇 년 전부터 읽고 있습니다. 이 링크에 주의를 기울이고 싶습니다:codebase.mql4.com/5900

ea는 저자: StJojo(2009.08.17 11:30)의 RUBBERBANDS_2 EA입니다. 모든 통화 쌍에서 (최소한의 최적화 작업 후) 작동하는 방식이 매우 흥미롭습니다. 기본적으로 (표현을 허용합니다..) 반자동 자동화 시동기로 사용할 수 있습니다. 실제로 횡보 시장에서 잘 작동하기 때문에 횡보 가능성이 높을 때 뉴스 간격에서 활성화 될 수 있음을 발견했습니다. 코드가 작성자에 의해 오픈 소스로 만들어졌다고 생각하기 때문에 아이디어가 마음에 드시면 특정 시간/분에서 특정 시간/시간/분에 "정지"로 작동하도록 변수를 추가하고 싶습니다( 즉, 현재 세션이 종료될 때 이 EA를 정지합니다). 이것은 ea의 "사전 프로그래밍" 작업 시간을 훨씬 더 용이하게 할 것입니다. 위 링크에서 파일을 첨부했습니다.

차트에서 새 항목을 읽는 데 사용하는 "forex_news_market_clock" 표시도 첨부했습니다.

이 사이트에서 만든 작업에 대해 모든 사람에게 감사합니다(물론 인터넷 전체에서...). 누군가가 도움이 되기를 바랍니다. 감사합니다.

안녕하세요 비토잉글레토입니다.

EA 덕분에 시간 필터와 금요일 마감 기능이 추가되었으며 EA가 주문을 어느 정도 구분하는 데 도움이 되는 매직 넘버도 추가되었습니다.

 

안녕하세요 ...

데이터를 한 번에(m1, m5, m30, m15, h1, h4, d1 ...) 직접 내보내는 기능을 코드에 분명히 별도의 파일에 넣을 수 있는지 궁금합니다. 현재 그리고 당신은 그것을 여러 번 시작해야합니다 ... (각 tmeframe에 대해).

데이터를 내보내는 데 상당한 시간을 절약할 수 있습니다.

이 함수를 코드에 삽입할 수 있습니까? 아이디어는 이 첨부된 스크립트( Period_converter_auto - MQL4 Code Base )와 비슷할 수 있습니다. 이 스크립트는 모든 데이터를 1볼타로 변환합니다. Si가 전문가에서 재생할 수 있습니까?

감사해요

 
dr.feelgood1989:
안녕하세요 ...

데이터를 한 번에(m1, m5, m30, m15, h1, h4, d1 ...) 직접 내보내는 기능을 코드에 분명히 별도의 파일에 넣을 수 있는지 궁금합니다. 현재 그리고 당신은 그것을 여러 번 시작해야합니다 ... (각 tmeframe에 대해).

데이터를 내보내는 데 상당한 시간을 절약할 수 있습니다.

이 함수를 코드에 삽입할 수 있습니까? 아이디어는 이 첨부된 스크립트( Period_converter_auto - MQL4 Code Base )와 비슷할 수 있습니다. 이 스크립트는 모든 데이터를 1볼타로 변환합니다. Si가 전문가에서 재생할 수 있습니까?

감사해요

dr.feelgood1989

이것을 사용하고 내보내고자 하는 모든 시간 프레임에 첨부하기만 하면 됩니다. 보는 각 시간 프레임에 대해 symbol+"_"+time frame이라는 파일을 만듭니다. 사용자 지정 지표 내보내기를 위한 템플릿으로 사용할 수 있습니다.

파일:
 

답변 감사합니다.. 믈라덴

사실 나는 이미 그랬다. 내가 게시한 스크립트(참고예)는 모든 시간대(변환)에 대해 한 번 작업을 가져옵니다.

그녀의 수정된 전문가는 단일 시간 프레임(파일을 구별하기 위해)이 한 번 사용될 때 "다시 작성"합니다.

단일 전문가를 시작하는 것이 다른 모든 기간에 다시 작성되는지 궁금합니다(예: ea1m이 테스터에서 시작되고 파일도 다른 기간 m5, m15 ...)에 작성됩니다.

감사해요 : )

 
mladen:
pgtips,

메인 루프는 어떻게 생겼나요(또는 그렇게 하려는 코드를 게시하세요)

추신: 선택한 막대의 정확한 날짜를 가리키도록 iOpen() 및 iClose()의 마지막 매개변수를 변경해야 합니다.

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

나는 이것에 꽤 붙어서 같은 일을 다른 방법으로 시도했습니다.

며칠 동안 검색한 후 이 표시기가 첨부된 것을 찾았습니다. 이 표시기는 제가 필요로 하는 것에 가깝지만 다르게 만들어졌습니다.

현재 양초(일일 기준)를 표시하지만 언젠가 다시 표시하도록 선택할 iopen/close 변수가 없습니다(예: shift -1).

x일 동안 교대 근무를 할 수 있는 방법을 알려주실 수 있습니까? ? 따라서 이전 날짜 막대가 빨간색이면 현재 상자를 빨간색으로 만들고 이전 날짜 막대가 빨간색이면 현재 상자를 녹색으로 만듭니다.

이 위에 브레이크아웃 상자 표시기를 오버레이할 수 있지만 이것이 시간에 의해 제한될 수 있다면 정말 좋을 것입니다.

바쁘시겠지만 시간을 내주시면 정말 감사하겠습니다.

많은 감사

PG

파일:
 

안녕,

나는 아직도 이것에 대해 잘 알고 있습니다.

첨부 파일에서 나는 피벗 표시기를 사용하여 전날 마감, 즉 이전 날 녹색 날 또는 빨간색을 기준으로 하루에 색상 변경을 얻을 수 있었습니다.

이제 직사각형을 만들고 오전 11시부터 오후 17시까지 표시되는 시간을 보고 싶은 기간을 기준으로 채워야 합니다. 최고 및 최저는 그 시간 동안에 무엇이든 됩니다.

나는 설정 //

ObjectCreate("사각형", OBJ_RECTANGLE , 0, 시간[periodBegin], 낮음[1], 시간[periodEnd], 높음[1]);

그러나 오류가 발생하여 아무 것도 표시되지 않습니다.

외부 정수 periodBegin = 11; //오전 11시

외부 정수 periodEnd = 17; // 오후 17:00

extern bool Plot_rectangles=true로 설정했습니다. 따라서 매일 무언가를 '계획'해야 합니다.

내가 여기서 무엇을 놓치고 있습니까?

고맙습니다

PG

파일:
 

내 질문에 대한 답을 알고 있다고 생각하지만... 여전히 확인하고 싶습니다.

ㅏ. 표시기는 더 높은 시간 프레임입니다.

비. 현재 시간 프레임입니다.

as based trend b를 사용하고 싶습니다. 항목으로 이것을 할 수 있습니까?

 
mtuppers:
내 질문에 대한 답을 알고 있다고 생각하지만... 여전히 확인하고 싶습니다.

ㅏ. 표시기는 더 높은 시간 프레임입니다.

비. 현재 시간 프레임입니다.

as based trend b를 사용하고 싶습니다. 항목으로 이것을 할 수 있습니까?

그래 넌 할수있어.

timeFrame 매개변수에서 더 높은 시간 프레임으로 호출하기만 하면 됩니다. 다중 시간 프레임 EA의 백테스트 트랩을 피하려면 다중 시간 프레임 표시기에서 닫힌 막대(0 대신 인덱스 1)를 사용하십시오.

 

안녕하세요,

도움이 되셨으면 합니다. 창 2에서 인디의 점(화살표; 아쿠아&노랑)이 창 1(메인 차트 창)에서 종가(또는 매수 신호의 경우 높음/ 매도 신호 의 경우 낮은)에 점(화살표)으로 표시되기를 원합니다. 나는 몇 시간 동안 시도했지만 결코 코더가되지 않을 것입니다 ;-)

#속성 표시기_분리_창

#속성 표시기_최소 -100.0

#속성 표시기_최대 100.0

#property indicator_levelcolor 슬레이트그레이

#속성 표시기_레벨 스타일 1

#속성 표시기_버퍼 8

#property indicator_color1 라임

#property indicator_color2 빨간색

#property indicator_color3 블랙

#property indicator_color4 블랙

#property indicator_color5 블랙

#property indicator_color6 블랙

#property indicator_color7 아쿠아

#property indicator_color8 노란색

#속성 표시기_너비1 1

#속성 표시기_레벨1 60.0

#속성 표시기_너비2 1

#속성 표시기_레벨2 50.0

#속성 표시기_레벨3 -50.0

#속성 표시기_레벨4 -60.0

외부 정수 WavePeriod = 10;

외부 정수 AvgPeriod = 21;

extern bool SoundAlert = FALSE;

extern bool EmailAlert = FALSE;

이중 g_ibuf_92[];

이중 g_ibuf_96[];

이중 g_ibuf_100[];

이중 g_ibuf_104[];

이중 g_ibuf_108[];

이중 g_ibuf_112[];

이중 g_ibuf_116[];

이중 g_ibuf_120[];

정수 gi_124 = -50;

정수 gi_128 = 50;

정수 gi_132;

정수 초기화() {

IndicatorShortName("트렌드웨이브");

SetIndexBuffer(0, g_ibuf_100);

SetIndexLabel(0, "ESA");

SetIndexStyle(0, DRAW_NONE);

SetIndexDrawBegin(0, 0);

SetIndexBuffer(1, g_ibuf_112);

SetIndexLabel(1, "DD 값");

SetIndexStyle(1, DRAW_NONE);

SetIndexDrawBegin(1, 0);

SetIndexBuffer(2, g_ibuf_104);

SetIndexLabel(2, "DD");

SetIndexStyle(2, DRAW_NONE);

SetIndexDrawBegin(2, 0);

SetIndexBuffer(3, g_ibuf_108);

SetIndexLabel(3, "CI");

SetIndexStyle(3, DRAW_NONE);

SetIndexDrawBegin(3, 0);

SetIndexBuffer(4, g_ibuf_92);

SetIndexLabel(4, "황소");

SetIndexStyle(4, DRAW_LINE, STYLE_SOLID, 1, 라임);

SetIndexDrawBegin(4, 0);

SetIndexBuffer(5, g_ibuf_96);

SetIndexLabel(5, "곰");

SetIndexStyle(5, DRAW_LINE, STYLE_SOLID, 1, 빨간색);

SetIndexDrawBegin(5, 0);

SetIndexBuffer(6, g_ibuf_116);

SetIndexLabel(6, "매수 도트");

SetIndexStyle(6, DRAW_ARROW, STYLE_SOLID, 2, 아쿠아);

SetIndexArrow(6, 108);

SetIndexDrawBegin(6, 0);

SetIndexBuffer(7, g_ibuf_120);

SetIndexLabel(7, "판매점");

SetIndexStyle(7, DRAW_ARROW, STYLE_SOLID, 2, 노란색);

SetIndexArrow(7, 108);

SetIndexDrawBegin(7, 0);

ArrayResize(g_ibuf_100, 막대);

ArrayResize(g_ibuf_112, 막대);

ArrayResize(g_ibuf_104, 막대);

ArrayResize(g_ibuf_108, 막대);

ArrayResize(g_ibuf_92, 막대);

ArrayResize(g_ibuf_96, 막대);

ArrayResize(g_ibuf_116, 막대);

ArrayResize(g_ibuf_120, 막대);

리턴(0);

}

정수 시작() {

더블 l_ima_on_arr_0;

int li_12 = IndicatorCounted();

if (li_12 < 0) return (-1);

if (li_12 > 0) li_12--;

int li_8 = 막대 - li_12;

(int li_16 = li_8; li_16 > 0; li_16--) {

g_ibuf_100[li_16] = iMA(NULL, 0, WavePeriod, 0, MODE_EMA, PRICE_TYPICAL, li_16);

ArraySetAsSeries(g_ibuf_100, 참);

}

(li_16 = li_8; li_16 > 0; li_16--) {

g_ibuf_112[li_16] = MathAbs((iHigh(NULL, 0, li_16) + iClose(NULL, 0, li_16) + iLow(NULL, 0, li_16)) / 3.0 - g_ibuf_100[li_16]);

ArraySetAsSeries(g_ibuf_112, TRUE);

}

(li_16 = li_8; li_16 > 0; li_16--) {

l_ima_on_arr_0 = iMAOnArray(g_ibuf_112, 0, WavePeriod, 0, MODE_EMA, li_16);

g_ibuf_104[li_16] = l_ima_on_arr_0;

ArraySetAsSeries(g_ibuf_104, 참);

}

(li_16 = li_8; li_16 > 0; li_16--) {

if (g_ibuf_104[li_16] > 0.0) g_ibuf_108[li_16] = ((iHigh(NULL, 0, li_16) + iClose(NULL, 0, li_16) + iLow(NULL, 0, li_16)) / 3.0 - 0[li_16] ) / (0.015 * g_ibuf_104[li_16]);

그렇지 않으면 g_ibuf_108[li_16] = 0;

ArraySetAsSeries(g_ibuf_108, TRUE);

}

(li_16 = li_8; li_16 > 0; li_16--) {

l_ima_on_arr_0 = iMAOnArray(g_ibuf_108, 0, AvgPeriod, 0, MODE_EMA, li_16);

g_ibuf_92[li_16] = l_ima_on_arr_0;

ArraySetAsSeries(g_ibuf_92, 참);

}

(li_16 = li_8; li_16 > 0; li_16--) {

l_ima_on_arr_0 = iMAOnArray(g_ibuf_92, 0, 4, 0, MODE_SMA, li_16);

g_ibuf_96[li_16] = l_ima_on_arr_0;

ArraySetAsSeries(g_ibuf_96, 참);

}

(li_16 = li_8; li_16 > 0; li_16--) {

if (g_ibuf_92[li_16] >= g_ibuf_96[li_16] && g_ibuf_92[li_16 + 1] <= g_ibuf_96[li_16 + 1] && g_ibuf_92[li_16] < gi_124) {

g_ibuf_116[li_16] = g_ibuf_92[li_16];

SendAlert("구매");

} 그렇지 않으면 g_ibuf_116[li_16] = -1000;

if (g_ibuf_92[li_16] = g_ibuf_96[li_16 + 1] && g_ibuf_92[li_16] > gi_128) {

g_ibuf_120[li_16] = g_ibuf_96[li_16];

SendAlert("판매");

} 그렇지 않으면 g_ibuf_120[li_16] = -1000;

}

리턴(0);

}

무효 SendAlert(문자열 as_0) {

if (시간[0] != gi_132) {

if (SoundAlert) {

if (as_0 == "구매") Alert(Symbol() + " => " + TimeToStr(TimeCurrent()) + " 구매");

if (as_0 == "판매") Alert(Symbol() + " => " + TimeToStr(TimeCurrent()) + "판매");

}

if (이메일 경고) {

if (as_0 == "구매") SendMail("TrendWave 경고", Symbol() + " => " + TimeToStr(TimeCurrent()) + "구매");

if (as_0 == "판매") SendMail("TrendWave 경고", Symbol() + " => " + TimeToStr(TimeCurrent()) + "판매");

}

gi_132 = 시간[0];

}

}