코딩 도움말 - 페이지 22

 

답변 감사합니다 로버트

그런 대시보드는 완벽할 것이지만 bb squeeze가 있는 대시보드를 찾지 못했고 bb squeeze에서 감지하도록 기존 대시보드를 변경하는 방법에 대한 단서가 없습니다.

내 자신의 아이디어는 다음과 같이 매우 간단했습니다.

int Current;

//+------------------------------------------------------------------+

//| expert start function |

//+------------------------------------------------------------------+

int start() {

int USDCHF, GBPUSD, EURUSD, AUDUSD;

double upperBB_USDCHF = iBands("USDCHF", 0, 20, 2, 0, PRICE_CLOSE, MODE_UPPER, Current + 0);

double upperKC_USDCHF = iCustom("USDCHF", 0, "Keltner Channels", 20, 0, Current + 0);

double lowerBB_USDCHF = iBands("USDCHF", 0, 20, 2, 0, PRICE_CLOSE, MODE_LOWER, Current + 0);

double lowerKC_USDCHF = iCustom("USDCHF", 0, "Keltner Channels", 20, 2, Current + 0);

if(upperBB_USDCHFlowerKC_USDCHF)

Comment(": BollingerSqueeze for USDCHF");

return(0);

}

//+------------------------------------------------------------------+

그건 몇 가지 다른 쌍에 대한 것이지만 내가 말했듯이 '댓글'은 항상 새로 고쳐집니다.

편집: 확인 수정했습니다. 더 이상 도움이 필요하지 않습니다.

 
crexsking:
안녕하세요 Mladen n 모든 회원 여러분,

나는 "큰 양초 이동"으로 차트 패턴을 거래합니다(Open[0]-Close[0] > 32핍 또는 그 반대) ni trade eurusd(FXOpen의 H1 <--- 가장 정확한 양초 크기 n 패턴)...

따라서 지표가 전혀 없었습니다. 그냥 거래 철학.

나는 논리에 대해 EA를 코딩하려고 하지만 거기에 뭔가 빠진 것 같아요... 제발 도와주세요!!!

내가 의미하는 "무언가 누락"이란 무엇입니까?

- "큰 양초"가 발생하기 전에 시스템이 모든 양초에 대해 마지막 4개의 양초 < 20pips(개방 - 닫기 또는 그 반대)를 계산하기를 원합니다.

반면에 .. 무슨 일이 있었습니까? 내 mql4 코딩은 큰 촛불 전에 마지막 4 개의 촛불을 읽지 않습니다 ... 너무 혼란 스럽습니다.

발생해야 하는 일은 다음과 같습니다.

1. 빅캔들 타임 :-

- 3pm,4pm,5pm(London Open) ..n.. 8pm,9pm,10pm(US Open) <---- 항상 말레이시아인으로 표시되므로 컴퓨터를 GMT 8.00++로 전환

2. 빅 캔들 사이즈 :-

- 32핍 n 위 (옆으로 눕기 전에 20핍 n 아래인 경우)

- 42핍 n 위(옆으로 눕는 경우 n 위 20핍)

3. 옆시장 :-

- 마지막 최소 4시간 동안 50핍 미만 n은 다른 색상이어야 합니다.

4. 무효 또는 위험한 시장(시장 취소): <--- 이 시장 상황이 발생하면 거래 없음

1. 런던 오픈 전 옆으로 B,B,B,B 위쪽 또는 S,S,S,S 아래쪽. <--- B,B,B,B = 양초 구매, 구매, 구매, 구매... 지속적으로

2. 큰 양초는 일일 최대값에서 마감됩니다. <---- 75핍 최소 고저

3. 빅캔들은 오후 10시에 발생합니다. <----- GMT 8++ 또는 말레이시아 시간

4. 큰 양초가 너무 크고 80핍 이상입니다.

5. 런던 개장 전 50핍 이상의 양초가 있습니다.

6. 도쿄 세션의 상승 시장과 런던 개장의 빅 캔들 상승 (하향의 경우도 마찬가지)

코딩 문제 첨부 :-

extern double trigger = 32;

extern double sideway = 20;

extern int hour1 = 6;

extern int hour2 = 7;

extern int hour3 = 8;

extern int hour4 = 9;

extern int hourCB = 10;

extern int hourTRADE = 11;

extern int TradeTimeStart = 0;

extern int TradeTimeEnd = 23;

//---Variables

double currentPrice = 0.00000;

static datetime barStart;

string openTrades = "none";

int ticket;

int i = 0;

double lotSize;

double CBB = 0;

double CBS = 0;

double CBBT;

double CBST;

double PreviousCBB;

double PreviousCBS;

double CS1B;

double CS2B;

double CS3B;

double CS4B;

double CS5B;

double CS6B;

double CS1S;

double CS2S;

double CS3S;

double CS4S;

double CS5S;

double CS6S;

double CS1BT;

double CS2BT;

double CS3BT;

double CS4BT;

double CS1ST;

double CS2ST;

double CS3ST;

double CS4ST;

double PreviousCS1B;

double PreviousCS2B;

double PreviousCS3B;

double PreviousCS4B;

double PreviousCS1S;

double PreviousCS2S;

double PreviousCS3S;

double PreviousCS4S;

double GroupSW1B;

double GroupSW2B;

double GroupSW3B;

double GroupSW4B;

double GroupSW5B;

double GroupSW6B;

double GroupSW1S;

double GroupSW2S;

double GroupSW3S;

double GroupSW4S;

double GroupSW5S;

double GroupSW6S;

string permit = "suspended";

//+------------------------------------------------------------------+

//| expert initialization function |

//+------------------------------------------------------------------+

int init()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| expert deinitialization function |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| expert start function |

//+------------------------------------------------------------------+

int start(){

CBB=(Close[1]-Open[1])/Point;

CBS=(Open[1]-Close[1])/Point;

CBBT=(hourCB==Hour());

CBST=(hourCB==Hour());

PreviousCBB = (CBB == CBBT);

PreviousCBS = (CBS == CBST);

CS1B=(Close[7]-Open[7])/Point;

CS2B=(Close[6]-Open[6])/Point;

CS3B=(Close[5]-Open[5])/Point;

CS4B=(Close[4]-Open[4])/Point;

CS5B=(Close[3]-Open[3])/Point;

CS6B=(Close[2]-Open[2])/Point;

CS1S=(Open[7]-Close[7])/Point;

CS2S=(Open[6]-Close[6])/Point;

CS3S=(Open[5]-Close[5])/Point;

CS4S=(Open[4]-Close[4])/Point;

CS5S=(Open[3]-Close[3])/Point;

CS6S=(Open[2]-Close[2])/Point;

CS1BT=(hour1==Hour());

CS2BT=(hour2==Hour());

CS3BT=(hour3==Hour());

CS4BT=(hour4==Hour());

CS1ST=(hour1==Hour());

CS2ST=(hour2==Hour());

CS3ST=(hour3==Hour());

CS4ST=(hour4==Hour());

PreviousCS1B = (CS1B == CS1BT);

PreviousCS2B = (CS2B == CS2BT);

PreviousCS3B = (CS3B == CS3BT);

PreviousCS4B = (CS4B == CS4BT);

PreviousCS1S = (CS1S == CS1ST);

PreviousCS2S = (CS2S == CS2ST);

PreviousCS3S = (CS3S == CS3ST);

PreviousCS4S = (CS4S == CS4ST);

GroupSW1B = (CS3B<sideway&&CS4S<sideway&&CS5B<sideway&&CS6S=trigger);

GroupSW1S = (CS3S<sideway&&CS4B<sideway&&CS5S<sideway&&CS6B=trigger);

currentPrice = iClose(NULL,0,0);

Comment("Price Continuation\n",

"Status: ",status()

);

//----Trade Algorithm

//trade hours value...

if(TradeTimeStart <= Hour() && Hour() <= TradeTimeEnd){

if(openTrades == "none" && permit == "approved"){

requestLongOrder();

requestShortOrder();

}

else{

requestPermit();

}

}

if(openTrades == "long"){

manageLongTrade();

}

if(openTrades == "short"){

manageShortTrade();

}

return(0);

}

//---FUNCTIONS---

//--

void requestLongOrder(){

if(hourTRADE==Hour() && GroupSW1B){

//--

Lots = CalcLots ();

ticket = OrderSend(Symbol(),OP_BUY,Lots,Ask,3,currentPrice-stopLoss,currentPrice+takeProfit,"My order ",06010,0,Green);

if(ticket<0){

//add email/sms alert here with GetLastError();

}

if(ticket>0){

openTrades = "long";

permit = "suspended";

}

}

}

void requestShortOrder(){

if(hourTRADE==Hour() && GroupSW1S){

//--

Lots = CalcLots ();

ticket = OrderSend(Symbol(),OP_SELL,Lots,Bid,3,currentPrice+stopLoss,currentPrice-takeProfit,"My order ",06010,0,Red);

if(ticket<0){

//add email/sms alert here with GetLastError();

}

if(ticket>0){

openTrades = "short";

permit = "suspended";

}

}

}

* 첨부된 스크린샷과 같이 어떻게 되는지.

도와주세요...

감사해요...

문안 인사,

크랙스킹

안녕하세요 크렉스킹입니다.

내가 생각할 수있는 유일한 것은 5 자리 브로커로 변환해야 할 수도 있다는 것입니다. 시작 후 다음과 같이 입력하십시오.

이중 pip승수 = 1; (초기화 전)

정수 시작()

{

if (숫자==3 || 숫자==5)

pip승수 = 10;

그렇지 않으면 pipMultiplier = 1;

그런 다음 모든 Point 다음에 이 Point*pipMultiplier와 같은 것입니다.

 

댓글은 어떻게 해결되었나요?

Deorn:
답변 감사합니다 로버트

그런 대시보드는 완벽할 것이지만 bb squeeze가 있는 대시보드를 찾지 못했고 bb squeeze에서 감지하도록 기존 대시보드를 변경하는 방법에 대한 단서가 없습니다.

내 자신의 아이디어는 다음과 같이 매우 간단했습니다.

========

그건 몇 가지 다른 쌍에 대한 것이지만 내가 말했듯이 '댓글'은 항상 새로 고쳐집니다.

편집: 확인 수정했습니다. 더 이상 도움이 필요하지 않습니다.

안녕하세요 데온님

문제를 해결하셨다니 반갑습니다. "댓글" 새로고침을 수정하기 위해 무엇을 했는지 공유해 볼까요...?

즐겁게 코딩하세요...!

로버트

 
cosmiclifeform:
안녕하세요 데온님

문제를 해결하셨다니 반갑습니다. "댓글" 새로고침을 수정하기 위해 무엇을 했는지 공유해 볼까요...?

즐겁게 코딩하세요...!

로버트

나는 당신이 말한대로 'objectcreate'로 그것을 만들었습니다.

나는 10개의 다른 쌍에서 매월 M5의 기간에 대해 그것을 깨달았습니다.

Keltner 채널은 'Keltner 채널'이라는 정확한 이름이 필요합니다. 저는 Factor 1.5로 설정 20을 선택합니다.

둘 다 두 개의 정상적인 지표입니다

나는 그것을 넣을 빈 창을 선택할 것이다

못생긴 프로그래밍에 대해 유감스럽게도 그것은 내 첫 번째 지표이지만 작업을 수행합니다.

인사

 
mrtools:
안녕하세요 크렉스킹입니다.

내가 생각할 수있는 유일한 것은 5 자리 브로커로 변환해야 할 수도 있다는 것입니다. 시작 후 다음과 같이 입력하십시오.

이중 pip승수 = 1; (초기화 전)

정수 시작()

{

if (숫자==3 || 숫자==5)

pip승수 = 10;

그렇지 않으면 pipMultiplier = 1;

그런 다음 모든 Point 다음에 이 Point*pipMultiplier와 같은 것입니다.

안녕하세요 mrtools n 감사합니다...

하겠는데 그전에 여쭤봐도 될까요.. 5자리 중개업체랑 뭔상관인가요?

내 말은... 이 전에 시스템은 횡보 시장의 마지막 4개 캔들에서 강세 또는 약세 캔들을 인식하지 못합니다.

이 코드를 넣으면 시스템이 인식할까요?

내 서투른 영어에 대해 죄송합니다 ...

문안 인사,

크랙스킹

 
crexsking:
안녕하세요 mrtools n 감사합니다...

하겠는데 그전에 여쭤봐도 될까요.. 5자리 중개업체랑 뭔상관인가요?

내 말은... 이 전에 시스템은 횡보 시장의 마지막 4개 캔들에서 강세 또는 약세 캔들을 인식하지 못합니다.

이 코드를 넣으면 시스템이 인식할까요?

내 서투른 영어에 대해 죄송합니다 ...

문안 인사,

크랙스킹

Crexsking, 그것은 핍으로 가져올 것이므로 예를 들어 열기에 .91135가 있고 닫기에 .90685가 있는 경우 5자리 브로커 포인트에 있는 경우 차이는 .0045입니다. .00001로 나누기 때문에 450이지만 사용하는 경우 변환하면 .0001 또는 .00001 x 10으로 나누기 때문에 올바르게 45핍이 됩니다. 그리고 황소 또는 곰 촛불을 인식하는 한 정말 말할 수 없습니다. 왜냐하면 귀하의 코드에 다른 문제가 없기 때문입니다.

 

빅플레이어 코딩.. 도와주세요...

\\---- 수정됨

좋아. 끝났어...

문제 해결됨.

문안 인사,

크랙스킹

 

도움이 필요하다

모든 마스터 코딩에 대해 안녕하세요. 도움이 필요합니다.

양초 그룹(닫기 - 열림)에 수평선 을 만들고 싶은 경우 값이 작은 경우 코딩은 어떻습니까? 값(닫기 - 열림)*100000 = 극성이 없고 항상 양수입니다. 외부 콘텐츠의 내 촛불 번호입니다.

예시:

extern int (닫기 - 열림)*100000 = 10; // 평균(닫기 - 열림) <= 10

extern int 최대 양초 수 = 3;

"수평선 상한" = 그룹 고유의 가장 높은 열림/닫힘에서 가져옴

"수평선 하한" = 그룹 고유의 가장 높은 열기/닫기에서 가져옴

내 안부,

고맙습니다

파일:
 

...

나는 당신이 의미하는 바를 정확히 이해하지 못합니다. 그래서 귀하의 질문의 일부만 대답합니다.

5자리 브로커에서 5자리 기호의 차이에 100000을 곱하면 ypu는 원하는 값을 얻을 수 있지만 기호가 예를 들어 JPY 십자형 중 하나인 경우 해당 값을 훨씬 초과하는 값을 얻게 됩니다. . 또한 4자리 중개인에서는 더 큰 가치를 갖게 될 것입니다. 이를 방지하는 가장 좋은 방법은 핍의 차이를 계산하는 것입니다. 이것이 당신이 그것을 할 수 있는 방법입니다:
double pipMultiplier = 1;

if (Digits==3 || Digits==5) pipMultiplier = 10;

//

//

// calculate the difference in pips

//

//

double difference = MathAbs((Close[shift] - Open[shift])/(Point*pipMultiplier));[/PHP]

그리고 심볼이나 브로커에 관계없이 항상 핍스에 있을 것입니다.

최소값과 최대값으로 다음과 같은 코드를 사용하여 막대 범위의 최저 최저값과 최고값을 찾을 수 있습니다.
[PHP]가장 높은 두 배 = 높음;

이중 최저 = 낮음;

paijowijaya:
모든 마스터 코딩에 대해 안녕하세요. 도움이 필요합니다.

양초 그룹(닫기 - 열림)에 수평선을 만들고 싶은 경우 값이 작은 경우 코딩은 어떻습니까? 값(닫기 - 열림)*100000 = 극성이 없고 항상 양수입니다. 외부 콘텐츠의 내 촛불 번호입니다.

예시:

extern int (닫기 - 열림)*100000 = 10; // 평균(닫기 - 열림) <= 10

extern int 최대 양초 수 = 3;

"수평선 상한" = 그룹 고유의 가장 높은 열림/닫힘에서 가져옴

"수평선 하한" = 그룹 고유의 가장 높은 열기/닫기에서 가져옴

내 안부,

고맙습니다
 
mladen:
나는 당신이 의미하는 바를 정확히 이해하지 못한다는 것이 두렵습니다. 그래서 귀하의 질문의 일부에만 대답합니다. 5자리 브로커에서 5자리 기호의 차이에 100000을 곱하면 ypu는 원하는 값을 얻을 수 있지만 기호가 예를 들어 JPY 십자형 중 하나인 경우 해당 값을 훨씬 초과하는 값을 얻게 됩니다. . 또한 4자리 중개인에서는 더 큰 가치를 갖게 될 것입니다. 이를 방지하는 가장 좋은 방법은 핍의 차이를 계산하는 것입니다. 이것이 당신이 그것을 할 수 있는 방법입니다:
double pipMultiplier = 1;

if (Digits==3 || Digits==5) pipMultiplier = 10;

// calculate the difference in pips

double difference = MathAbs((Close[shift] - Open[shift])/(Point*pipMultiplier));[/PHP]

:
[PHP]가장 높은 두 배 = 높음;

이중 최저 = 낮음;

큰 놀라움 당신이 내 질문에 답해주셔서 매우 기쁩니다. Master Mladen,

하지만 여전히 혼란스러워 죄송합니다. 완전한 코딩을 제공하시겠습니까? 값 * 100000 0.0002(쉼표 뒤 4자리)가 아니라 읽기 쉽게 하려고 했지만 더 쉬운 방법이 있으면 따르겠습니다. 본질적으로 세 개의 양초(밸런스 영역 또는 구매자 = 판매자 또는 사이드 웨이 영역, 각 TF는 다른 양초 수)를 찾았을 때 작은(그 값은 닫기 - 열기의 차이에서 가져옴) 수평 을 그리고 싶습니다 내가 업로드 한 사진과 같은 . 그래서 나는 선의 도움으로 차트의 수요와 공급을 압니다. 아니면 그런 지표가 있습니까?

감사합니다.

마스터 믈라덴 감사합니다

사유: