또 다른 질문: Cls_S==true가 트리거되면 주문을 4부분으로 나누고 각 부분을 닫아야 합니다. 카운터를 이용하려고 했는데.. 안되네요..
아무도 나에게 아이디어를 줄 수 있습니까???
미리 감사합니다!!!!
if (팁==1 && ((Cls_S0==true&&TotClS==0)||(Cls_S1==true&&TotClS==1) ||(Cls_S2==true&&TotClS==2)||(Cls_S3==true&&TotClS==3))) // 매도 주문이 열렸습니다.. { // IT 종료 기준이 있습니다. Alert("0.2 Lot Sell ",Ticket,". 응답을 기다리는 중입니다.."); 새로 고침(); // 데이터 업데이트 Ans=OrderClose(Ticket,LotCt,Ask,5);
if (Ans==true) // 알았습니다 :) { TotClS++; Alert("0.2 로트 판매 종료 ",티켓); 부서지다; // 닫기 루프에서 종료 } if (Fun_Error( GetLastError() )==1) // 오류 처리 계속하다; // 재시도 반품; // start()에서 종료 } 부서지다; // 종료하는 동안
내 이전 게시물(페이지 67)을 참조하십시오. 오류를 찾을 수 없습니다. 보류 중인 주문이 설정되지 않았습니다.
오류가 없습니다. 더 조심해야 합니다
오류가 없습니다. 더 조심해야 합니다
아니, 아니. 게시물을 보지 않으셨습니다. 다른 것 바로 아래 :)). 테스트한 버전은 보류가 설정되어야 하는 현재 가격 (현재 가격만)의 수준을 지정하지 않습니다. 응답해 주셔서 감사합니다.
아니, 아니. 당신은 게시물을 보지 않았다. 다른 것 바로 아래 :)). 테스트한 버전은 보류가 설정되어야 하는 현재 가격(현재 가격만)의 수준을 지정하지 않습니다. 응답해 주셔서 감사합니다.
OPENORDER() 함수 호출 또는 함수 자체에 문제가 있습니다.
이것이 작동하는 방식입니다
만약 (구매 중지)
{
if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); elseTP=0;
if (stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); elseSL=0;
int error=OrderSend(Symbol(),OP_BUYSTOP, Lot,NormalizeDouble(Ask + DistanceSet*Point,Digits),slippage,SL,TP,"",Magic,0);
}
OPENORDER() 함수 호출 또는 함수 자체에 문제가 있습니다.
이것이 작동하는 방식입니다
만약 (구매 중지)
{
if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); elseTP=0;
if (stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); elseSL=0;
int error=OrderSend(Symbol(),OP_BUYSTOP, Lot,NormalizeDouble(Ask + DistanceSet*Point,Digits),slippage,SL,TP,"",Magic,0);
}
아아아아아아!!! 컴퓨터 신들!!! 벌써 10번은 넘었어요! 작동하지 않는 이유는 무엇입니까?! 주요 시장이 열립니다. 같은 원칙에 따라 절대적으로 연기되었습니다. 그는 무엇이 부족합니까? :))))))))
튜토리얼에 설명된 Expert Advisor에 TrailingStopFrCnSAR_v2를 삽입하는 방법을 알려주십시오.
다른 고문 이 보류 중인 주문 을 하거나 주문을 열 때 작동하도록 주문 추적을 비활성화하려면 어떻게 해야 합니까?
으어어어어어어어어어어어어어!!!!!!!!! 오류 발견!
관심 있는 사람이 있으면 다음과 같은 작업 버전이 있습니다.
#property copyright "Copyright © 2010, Vladimir Khlystov"
#피
로프티 링크 "cmillion@narod.ru"
#property show_inputs
//------------------------------------------------ --------------------
extern int 손절매 = 0; //SL 설정 레벨, 0이면 SL이 설정되지 않음
extern int takeprofit = 0; //TP 설정 레벨, 0이면 TP가 설정되지 않음
extern int 매직 = 123456; //고유 주문번호
extern 부울 BUY = 거짓; //구매 주문을 엽니다.
extern bool SELL = 거짓; //오픈 매도 주문
extern bool BUYSTOP = 거짓; //BUYSTOP 주문을 엽니다.
외부 부울 SELLSTOP = 거짓; //SELLSTOP 주문 열기
외부 이중 로트 = 0.1; //주문량
extern int 미끄러짐 = 3; //시장가 주문에 대한 최대 허용 가격 편차
외부 정수 DistanceSet = 20; // 시장과의 거리
//------------------------------------------------ --------------------
이중 SL,TP;
//------------------------------------------------ --------------------
정수 시작()
{
만약 (구매)
{
if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); elseTP=0;
if (stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); elseSL=0;
OPENORDER("구매");
}
만약 (판매)
{
if (takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); elseTP=0;
if (stoploss!=0) SL = NormalizeDouble(Bid + stoploss*Point,Digits); elseSL=0;
OPENORDER("판매");
}
만약 (구매 중지)
{
if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); elseTP=0;
if (stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); elseSL=0;
OPENORDER("매수 정지");
}
(판매 중지)
{
if (takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); elseTP=0;
if (stoploss!=0) SL = NormalizeDouble(Bid + stoploss*Point,Digits); elseSL=0;
OPENORDER("매도 중지");
}
리턴(0);
}
//------------------------------------------------ --------------------
무효 OPENORDER(문자열 순서)
{
정수 오류, 오류;
동안 (사실)
{ 오류=참;
if (ord=="구매" ) error=OrderSend(Symbol(),OP_BUY, Lot,NormalizeDouble(Ask,Digits),slippage,SL,TP,"",Magic,0);
if (ord=="판매") error=OrderSend(Symbol(),OP_SELL,Lot,NormalizeDouble(Bid,Digits),slippage,SL,TP,"",Magic,0);
if (ord=="매수 스톱" ) error=OrderSend(Symbol(),OP_BUYSTOP, Lot,NormalizeDouble(Ask + DistanceSet*Point,Digits),slippage,SL,TP,"",Magic,0);
if (ord=="판매 중지") error=OrderSend(Symbol(),OP_SELLSTOP,Lot,NormalizeDouble(Bid - DistanceSet*Point,Digits),slippage,SL,TP,"",Magic,0);
if (error==-1) // 시도 실패
{
오류 표시();
err++;Sleep(2000);RefreshRates();
}
if (오류 || err >10) 반환;
}
반품;
}
//------------------------------------------------ --------------------
무효 ShowERROR()
{
int err=GetLastError();
스위치(오류)
{
사례 1: 반환;
사례 2: Alert("거래 서버와 연결되지 않음 ",Symbol());return;
사례 3: Alert("잘못된 매개변수 오류",Symbol());return;
case 130: Alert("티켓 종료 오류",Symbol());return;
사례 134: Alert("돈이 부족합니다. ",Symbol()); return;
사례 146: Alert("오류 거래 하위 시스템 사용 중",Symbol());return;
사례 129: Alert("오류 잘못된 가격",Symbol()); 반환;
case 131: Alert("오류 잘못된 볼륨",Symbol());return;
case 4200:Alert("오류 개체가 이미 존재합니다. ",Symbol());return;
기본값: Alert("오류 ",err," ",Symbol());return;
}
}
//------------------------------------------------ --------------------
토론에 참여해주신 모든 분들께 진심으로 감사드립니다! 너 없이는 어디에도 없어! :))))))
으어어어어어어어어어어어어어!!!!!!!!! 오류 발견!
토론에 참여해주신 모든 분들께 진심으로 감사드립니다! 너 없이는 어디에도 없어! :))))))
여전히 코드에 오류가 있습니다.
기억하십시오: 보류 중인 중지 및 접수는 현재 가격이 아니라 주문 개시 가격 에서 계산됩니다.
돕다! 말씀해 주세요. 포지션의 일부를 청산하는 경우(예: 1로트 주문 및 0.5로트 청산) OrderClose에서 티켓을 변경해야 합니까? 나는 그것이 변경된다는 테스터에 씁니다 ... 이것을 어떻게 피할 수 있습니까? 아래는 종료 코드의 스니펫입니다...
1 2011.01.31 06:57 매도 1 2.55 1.36177 0.00000 0.00000 0.00 10000.00
2 2011.01.31 08:10 마감 1 0.51 1.36039 0.00000 0.00000 70.38 10070.38
3 2011.01.31 08:10 매도 2 2.04 1.36177 0.00000 0.00000 0.00 10070.38
4 2011.01.31 08:10 종가 2 0.40 1.36038 0.00000 0.00000 55.60 10125.98
5 2011.01.31 08:10 매도 3 1.64 1.36177 0.00000 0.00000 0.00 10125.98
또 다른 질문: Cls_S==true가 트리거되면 주문을 4부분으로 나누고 각 부분을 닫아야 합니다. 카운터를 이용하려고 했는데.. 안되네요..
아무도 나에게 아이디어를 줄 수 있습니까???
미리 감사합니다!!!!
if (팁==1 && ((Cls_S0==true&&TotClS==0)||(Cls_S1==true&&TotClS==1)
||(Cls_S2==true&&TotClS==2)||(Cls_S3==true&&TotClS==3))) // 매도 주문이 열렸습니다..
{ // IT 종료 기준이 있습니다.
Alert("0.2 Lot Sell ",Ticket,". 응답을 기다리는 중입니다..");
새로 고침(); // 데이터 업데이트
Ans=OrderClose(Ticket,LotCt,Ask,5);
if (Ans==true) // 알았습니다 :)
{
TotClS++;
Alert("0.2 로트 판매 종료 ",티켓);
부서지다; // 닫기 루프에서 종료
}
if (Fun_Error( GetLastError() )==1) // 오류 처리
계속하다; // 재시도
반품; // start()에서 종료
}
부서지다; // 종료하는 동안
flag[] 버퍼의 임시 렌더링을 만들었습니다. 비어 있습니다. 이유는 무엇입니까? 내 실수는 어디에 있습니까?
최소한의 것을 보여드리기 위해 약간 수정했습니다.
- 표시기를 별도의 창으로 이동한 다음 반환할 수 있습니다.
- macd[] 배열이 공중에 매달려 표시되도록 하여 정확도를 높였습니다.
- 개봉을 위해 복잡한 조건을 예약하고 조정을 위해 간단한 조건을 설정합니다.
- 플래그의 조건이 변경되어 어떻게 든 작동합니다.
그런 다음 점차적으로 조건을 입력할 수 있으며, 즉시 잼이 있는 곳을 볼 수 있습니다.