코딩하는 방법? - 페이지 157

 

고마워 울프!

답변과 책 감사합니다! 그것은 나에게 새롭기 때문에 나는 그것에 파고들어 더 배울 것입니다. 그런 다음 도로 차단에 부딪히면 내 EA 또는 다른 질문의 다음 버전을 게시할 것입니다.

에릭

 

물체의 시간 고정

내가 차트 TF를 변경할 때 화살표가 원래 시간에 유지되도록 누군가가 개체(예: 화살표)를 시간 수정하는 방법을 알려줄 수 있는지 궁금했습니다. 수직선 을 그린 다음 차트 TF를 변경하는 것과 유사합니다. 감사해요.

 

.00을 변경하거나 제거 하는 방법

이중 HiPrice2 = iHigh(NULL,NULL,1);

double LoPrice2 = iLow (NULL,NULL,1);

이중 Rangehilo = (HiPrice2-LoPrice2);

if (숫자 < 4) Rangehilo = Rangehilo * 100; 그렇지 않으면 Rangehilo = Rangehilo * 10000;

Comment("\n","범위: ",DoubleToStr(Rangehilo,2)+" 핍","\n");

높음과 낮음 사이에 범위 PIP를 만들려고 하지만 다음과 같이 표시됩니다.

->> 범위: 37.00핍

제 질문은 .00을 제거하는 방법입니다. 그래서 37pip만 표시됩니까?

감사해요

 

NormalizeDouble(var1,0);

럭스

추신: 방금 코드를 확인했습니다. DoubleToStr(Rangehhilo,0) - 2를 0으로 변경

 
luxinterior:
NormalizeDouble(var1,0);

럭스

추신: 방금 코드를 확인했습니다. DoubleToStr(Rangehhilo,0) - 2를 0으로 변경

Ohohhh, 단지 작은 실수..고마워 luxinterior!

 

표준 편차 밴드 추가

안녕하세요, 어리석은 질문에 대해 죄송하지만 pls는 여기에서 저를 도와주세요.

차트 창에 1개의 선으로 구성된 지표가 있고 볼린저 밴드와 같이 해당 선에 표준 편차 밴드를 추가하려는 경우. 이 작업을 수행하는 방법:

원래 표시기를 그리는 버퍼의 이름이 abc라고 가정해 보겠습니다.

따라서 먼저 다음을 선언합니다.

extern int BandsPeriod=20;

extern int BandsShift=0;

외부 이중 대역편차=2.0;

1) 당신이 변경

#property indicator_buffers 1 (1은 3이 됨)

2)

SetIndexBuffer(0,abc);

SetIndexStyle(0,DRAW_LINE);

그리고 추가

SetIndexBuffer(1,UpperBuffer);

SetIndexStyle(1,DRAW_LINE);

SetIndexBuffer(2,LowerBuffer);

SetIndexStyle(2,DRAW_LINE);

SetIndexDrawBegin(0,BandsPeriod+BandsShift);

SetIndexDrawBegin(1,BandsPeriod+BandsShift);

3) 나머지 볼린저 밴드 코드를 초기화 루프에 추가합니다.

정수 시작()

{

int i,k,counted_bars=IndicatorCounted();

이중 편차, 합계, oldval, newres;

//----

if(Bars<=BandsPeriod) return(0);

//---- 초기 0

if(counted_bars<1)

등등....

4) 하지만 원래 bands.mq4 코드의 MovingBuffer라는 버퍼를 "abc"라는 표시기의 새 버퍼로 대체하는 방법은 무엇입니까?

이 문제를 해결하는 가장 좋은 방법은 무엇입니까?

내 표시기 코드를 bands.mq4 코드로 가져와야 합니까 아니면 그 반대로 해야 합니까?

내가 작업하고 있는 것을 볼 수 있도록 bands.mq4라는 잘 알려진 코드를 첨부했습니다.

다시 한 번, 내 코딩 무지에 대해 죄송합니다.

누군가 '표준 개발 밴드 추가 튜토리얼'을 알고 있습니까? 그것이 바로 지금 나에게 필요한 것입니다. 고마워

파일:
bands.mq4  3 kb
 
 

EA를 위한 코딩

모두들 안녕,

현재 거래 세션에서 이미 수익성 있는 거래가 있었다면 EA가 거래하지 못하도록 하는 코딩을 만들고 싶습니다.

나는 매일 거래를 위한 개장 시간과 마감 시간을 선택할 수 있는 여러 EA를 구축했습니다. EA는 또한 각각의 새로운 바가 열릴 때만 무엇이든 합니다. 따라서 거래가 진행 중이고 손절매 또는 이익 실현 에 도달하여 거래가 마감된 경우 EA는 새 거래를 열기 전에 다음 막대가 열릴 때까지 기다릴 것입니다.

예를 들어, 1시간 차트에서 오전 6시에서 오후 2시 사이에 거래되도록 EA를 설정했습니다. 오전 6시에 거래가 열립니다. 9시 23분에 테이크 이익이 발생하고 거래가 마감됩니다. 오전 10시에 새로운 거래가 열리고 새로운 손절매 또는 이익실현에 도달하거나 시간이 오후 2시에 도달할 때까지 열린 상태로 유지되며, 이 시간에 거래가 닫히고 나머지는 거래가 완료됩니다. 오늘의.

EA가 했으면 하는 것은 시간을 인식할 뿐만 아니라 거래 세션 동안 이미 승리한 거래를 했는지 여부도 인식하는 것입니다. 따라서 위의 예에서는 아직 당일의 거래 시간에 있어도 이미 수익이 발생했기 때문에 EA는 오전 10시에 새로운 거래를 열지 않을 것입니다. 반면에 위의 예에서 내 손절매가 맞았다면 아직 수익이 나지 않았기 때문에 EA는 오전 10시에 새로운 거래를 열 것입니다.

"Mode_History" 매개변수와 함께 "OrderSelect" 기능을 사용하여 이전에 마감된 거래를 확인한 다음 손익이 실현되었는지 여부를 결정하기 위해 주문에 대한 개시 가격을 마감 가격과 비교해야 한다고 생각합니다. . 그 말이 맞는 것 같습니까? 프로그래밍의 초보자이기 때문에 이것이 문제에 접근하는 가장 좋은 방법인지 확신할 수 없으며 만약 그렇다면 올바른 형식으로 제대로 작동하도록 하는 데 오랜 시간이 걸릴 것입니다.

누군가가 나를 도울 수 있거나 최소한이 문제를 해결하는 방법에 대한 통찰력이나 아이디어를 제공하면 감사하겠습니다. 내 예가 의미가 없으면 알려주시면 더 잘 설명하도록 노력하겠습니다.

제공되는 도움에 미리 감사드립니다.

 

주문 손실 확인 중...

이 사이트의 https://www.mql5.com/en/forum/176053/page25 링크에 DIN_Kukus_EA_V2.6의 사본이 있습니다. EA의 내용을 보면 본인이 직접 하는 것처럼 주문내역에서 주문손실을 확인하는 기능을 찾을 수 있습니다. 주문 내역에서 성공적인 거래 수를 추출하는 방법에 대한 이 작업 예를 사용할 수 있습니다. 특정 기간의 기록을 추출하도록 수정할 수도 있지만, 이것이 스스로 제안한 것을 달성하는 방법을 보는 데 도움이 되기를 바랍니다.

 

EA에서 지표 결과를 사용 하려는 경우

모두들 안녕,

Gliding_Channels 표시기는 현재 채널 데이터를 데이터 창의 주석 영역에 넣습니다. 현재 막대에 있는 채널의 수직 깊이, 채널의 각도(양수 및 음수 모두), 상한 및 하한을 알려줍니다. 해당 데이터를 보고 싶지만 내 EA가 댓글 영역에 표시하는 데이터와 충돌하여 내 댓글이 깜박입니다.

iCustom을 사용하여 EA에서 참조할 수 있도록 표시기의 4개 데이터 각각에 대해 SetIndexBuffer를 추가하려고 했습니다. 그런 식으로 EA 의견에 네 가지 값 중 하나만 가져올 수 있었습니다. (나는 또한 깜박임 문제가 계속 발생했습니다).

누가 내 EA의 네 가지 지표 결과에 액세스하는 올바른 방법을 알려 주시겠습니까?

내 EA에서는 이 네 가지 값을 "깊이, 각도, limitHI 및 limitLO"라고 부를 것입니다.

파일: