'\end_of_program' - 끝 대괄호 '}' 예상 C:\...\My_First_EA.mq4(96,1)
더블클릭해서 그 줄로 가서 그 앞에 여는 괄호로 확인했는데 아직도 내가 어디서 실수했는지 모르겠다.
이것은 동일한 표시기를 기반으로 동일한 오류 메시지로 내가 시도한 두 번째 EA입니다.
고맙습니다.
센드라님, 첨부파일로 제 이메일 주소로 프로그램을 보내주시면 제가 보고 수정하도록 하겠습니다. 일반적으로 문제는 명령문 뒤에 괄호가 누락된 것입니다. 불행히도 이것은 저급 언어이며 기본 언어이기 때문에 오류가 여러 번 발생하는 정확한 위치를 알려줄 수 없으므로 기본적으로 표시되는 오류가 표시됩니다. 코딩 경험만이 이러한 유형의 오류를 해결하는 데 도움이 됩니다.
아마도 당신이 약간의 안내에 신경 쓰지 않는다면. 이것은 내가 알아내는 데 약간의 도전이었습니다!! 저는 EA가 공개 거래를 마감할지 여부를 결정하기 위해 살펴볼 몇 가지 조건을 정의하고 싶습니다. 구매 주문을 예로 들어 보겠습니다( 판매 주문 은 반대 논리라는 것을 알고 있습니다). 그래서 월요일에 매수 주문을 열었습니다. 나는 EA가 앞으로 X #일 동안 Daily Close를 보기를 원합니다. 다음 X일(예: 5일)의 일일 마감이 거래의 주문 시작 가격보다 낮으면 EA가 주문 닫기를 실행하여 거래를 청산하기를 원합니다. 나는 또한 이 조건의 또 다른 가능한 부분이 다음 X일 동안 매일 종가가 이전 종가보다 낮은 경우 EA가 살펴보기를 원하는 부분이라고 생각했습니다. 또한 My EA는 1시간 단위로 실행됩니다.
나는 EA의 코딩을 요구하는 것이 아니라 한 가지 문제에 대해 약간의 도움을 요청하는 것입니다.
내가 코딩하고 싶은 것은 미결제 롱 주문이 있는 경우 해당 특정 롱 주문이 열린 이후 주문이 본 가장 높은 견적 가격을 호출할 수 있기를 원한다는 것입니다. 분명히 주문이 처음 열릴 때 열린 가격 이 반환됩니다. 주문이 20핍 증가하면 OrderOpenPrice() + 20핍의 가격이 반환됩니다. 가격이 10핍 감소하면 OrderOpenPrice() + 20 가격은 여전히 반환된 값입니다. 이것은 OrderOpenPrice() + High[0]를 사용하여 특정 막대 내에서 수행할 수 있다는 것을 알고 있지만 새 막대가 형성되면 High[0]이 High[1]이 됩니다. 또한 동일한 논리를 반대로 사용하여 특정 매도 주문이 본 가장 낮은 값을 반환합니다. 주문이 마감되면 반환된 값은 0으로 재설정됩니다.
jimven: 현재 막대의 가장 높은 인용 값을 변수에 저장합니다. 다른 견적을 받을 때마다 변수의 값과 비교하십시오. 새 값이 더 높으면 변수에 저장합니다. 새 값이 더 낮으면 변수를 동일하게 유지합니다.
if(변수 < 새따옴표)
변수 = newquot;
도움이 되기를 바랍니다!
도움을 주셔서 감사합니다. 그런데 한 가지 질문이 있습니다. 현재 막대가 더 이상 주문이 열린 막대가 아닌 경우 어떻게 됩니까? 바에서 5바 전에 주문이 열리면 어떻게 됩니까? 이제 주문이 시작된 이후 가장 높은 견적 가격인 5개의 바 중 가장 높은 견적가를 원합니다. 여전히 작동합니까?
더 많은 EA
한 번에 5개만 업로드할 수 있습니다.
"마지막 거래가 성공적이었다면"을 작성하는 방법
EA에서 "마지막 거래가 이겼다면"(이 쌍에 대해)을 쓰는 방법은 ...
도움을 위해 Thx.
조
MarketInfo()에 대해
모두 안녕!
//
더블 A = MarketInfo("EURUSD",MODE_BID);
doube B = MarketInfo("USDJPY",MODE_BID);
더블 C = MarketInfo("EURJPY",MODE_BID);
초기화()
{
A = MarketInfo("EURUSD",MODE_BID);
B = MarketInfo("USDJPY",MODE_BID);
C = MarketInfo("EURJPY",MODE_BID);
}
정수 시작()
{
...
}
//
왜 그 코드가 작동하지 않습니까? 준수할 때 많은 오류가 발생합니다.
'MarketInfo' - 초기화 예상됨
'A' - 변수가 정의되지 않았습니다...
.....등등
이것은 나를 위해 일했습니다.
EA에서 "마지막 거래가 이겼다면"(이 쌍에 대해)을 쓰는 방법은 ...
도움을 요청합니다.
조이중 랏최적화()
{
double lot = InitialLots;//default lot 0.1 - 코드의 다른 부분에 의해 lot이 설정되지 않으면 오류가 발생하지 않습니다.
// 정수 합계 = OrdersHistoryTotal();
for(int i=0;i<OrdersHistoryTotal();i++) // 닫히거나 취소된 모든 트랜잭션 검색
{
주문 선택(i, SELECT_BY_POS, MODE_HISTORY);
if(OrderSymbol() == Symbol()&& OrderMagicNumber()==MagicNumber)
{
if(주문수익()<0)
{
많은 = NormalizeDouble(OrderLots() * LotFactor,2);
}
또 다른
{
lot=InitialLots;
}
}
}
반환(많은);
}
마지막으로 마감된 거래가 승자인지 확인 하기 위해 이것을 사용했습니다. 그렇지 않다면 나는 제비뽑기를 martingaled했다. 도움이 되기를 바랍니다.
안녕하세요 여러분
EA를 생성하려고 시도했는데 다음 오류 메시지가 나타납니다.
'\end_of_program' - 끝 대괄호 '}' 예상 C:\...\My_First_EA.mq4(96,1)
더블클릭해서 그 줄로 가서 그 앞에 여는 괄호로 확인했는데 아직도 내가 어디서 실수했는지 모르겠다.
이것은 동일한 표시기를 기반으로 동일한 오류 메시지로 내가 시도한 두 번째 EA입니다.
고맙습니다.센드라님, 첨부파일로 제 이메일 주소로 프로그램을 보내주시면 제가 보고 수정하도록 하겠습니다. 일반적으로 문제는 명령문 뒤에 괄호가 누락된 것입니다. 불행히도 이것은 저급 언어이며 기본 언어이기 때문에 오류가 여러 번 발생하는 정확한 위치를 알려줄 수 없으므로 기본적으로 표시되는 오류가 표시됩니다. 코딩 경험만이 이러한 유형의 오류를 해결하는 데 도움이 됩니다.
데이브
<<<
ddiebold7@aol.com
Ralph, 일부 Daily Close 로직을 도와주세요
안녕하세요 랄프입니다.
아마도 당신이 약간의 안내에 신경 쓰지 않는다면. 이것은 내가 알아내는 데 약간의 도전이었습니다!! 저는 EA가 공개 거래를 마감할지 여부를 결정하기 위해 살펴볼 몇 가지 조건을 정의하고 싶습니다. 구매 주문을 예로 들어 보겠습니다( 판매 주문 은 반대 논리라는 것을 알고 있습니다). 그래서 월요일에 매수 주문을 열었습니다. 나는 EA가 앞으로 X #일 동안 Daily Close를 보기를 원합니다. 다음 X일(예: 5일)의 일일 마감이 거래의 주문 시작 가격보다 낮으면 EA가 주문 닫기를 실행하여 거래를 청산하기를 원합니다. 나는 또한 이 조건의 또 다른 가능한 부분이 다음 X일 동안 매일 종가가 이전 종가보다 낮은 경우 EA가 살펴보기를 원하는 부분이라고 생각했습니다. 또한 My EA는 1시간 단위로 실행됩니다.
내가 이루고자 하는 바를 당신이 이해할 수 있을 만큼 명확하게 설명하였기를 바랍니다.
도움을 주셔서 미리 감사드립니다.
코딩 도와주세요
나는 EA의 코딩을 요구하는 것이 아니라 한 가지 문제에 대해 약간의 도움을 요청하는 것입니다.
내가 코딩하고 싶은 것은 미결제 롱 주문이 있는 경우 해당 특정 롱 주문이 열린 이후 주문이 본 가장 높은 견적 가격을 호출할 수 있기를 원한다는 것입니다. 분명히 주문이 처음 열릴 때 열린 가격 이 반환됩니다. 주문이 20핍 증가하면 OrderOpenPrice() + 20핍의 가격이 반환됩니다. 가격이 10핍 감소하면 OrderOpenPrice() + 20 가격은 여전히 반환된 값입니다. 이것은 OrderOpenPrice() + High[0]를 사용하여 특정 막대 내에서 수행할 수 있다는 것을 알고 있지만 새 막대가 형성되면 High[0]이 High[1]이 됩니다. 또한 동일한 논리를 반대로 사용하여 특정 매도 주문이 본 가장 낮은 값을 반환합니다. 주문이 마감되면 반환된 값은 0으로 재설정됩니다.
이 문제를 해결하는 데 문제가 있습니다. 아무도 도와줄 수 있습니까?
감사합니다!
현재 막대의 가장 높은 인용 값을 변수에 저장합니다. 다른 견적을 받을 때마다 변수의 값과 비교하십시오. 새 값이 더 높으면 변수에 저장합니다. 새 값이 더 낮으면 변수를 동일하게 유지합니다.
if(변수 < 새따옴표)
변수 = newquot;
도움이 되기를 바랍니다!
현재 막대의 가장 높은 인용 값을 변수에 저장합니다. 다른 견적을 받을 때마다 변수의 값과 비교하십시오. 새 값이 더 높으면 변수에 저장합니다. 새 값이 더 낮으면 변수를 동일하게 유지합니다.
if(변수 < 새따옴표)
변수 = newquot;
도움이 되기를 바랍니다!도움을 주셔서 감사합니다. 그런데 한 가지 질문이 있습니다. 현재 막대가 더 이상 주문이 열린 막대가 아닌 경우 어떻게 됩니까? 바에서 5바 전에 주문이 열리면 어떻게 됩니까? 이제 주문이 시작된 이후 가장 높은 견적 가격인 5개의 바 중 가장 높은 견적가를 원합니다. 여전히 작동합니까?
감사해요