if (TimeDayOfYear(TimeCurrent())==TimeDayOfYear(GetLastClosedOrderTime())) // 거래 없음
안녕하세요 mladen, 코드를 추가했지만 전역 변수 오류의 일부 형태를 제공하는 것 같습니다. 또한 정의되지 않은 변수 MagicNumber가 있다는 것을 알았습니다. 그 이유가 무엇인지 여쭤봐도 될까요? int 아래에 추가했지만 해당 변수의 용도가 무엇인지 잘 모르겠습니다.
안녕하세요 mladen, 코드를 추가했지만 일종의 전역 변수 오류가 발생하는 것 같습니다. 또한 정의되지 않은 변수 MagicNumber가 있다는 것을 알았습니다. 그 이유가 무엇인지 여쭤봐도 될까요? int 아래에 추가했지만 해당 변수의 용도가 무엇인지 잘 모르겠습니다.
현재 보류 중인 거래는 조건이 충족되면 ea가 2개의 보류 중인 거래를 설정한다는 의미입니다(롱 1개, 숏 1개). 따라서 긴 거래가 시작되었다고 말하면 ea는 자동으로 짧은 보류 거래를 취소합니다.
미래 보류 거래는 ea가 이전 보류 거래를 취소하고 조건이 다시 충족된다고 말한 후 ea가 2번의 보류 중인 거래를 추가로 설정해야 함을 의미합니다(롱 1개, 숏 1개). 그러나 ea가 현재 실행 중인 거래가 있는 경우 ea는 ea가 설정하려고 하는 보류 중인 주문 을 자동으로 취소합니다.
내가하려는 것은 거래가 시작된 후 시스템이 현재 보류중인 거래 만 취소하도록하는 것입니다. 도움을 주셔서 감사합니다
tkuan77
마지막으로 닫은 막대를 찾아 마지막으로 닫은 막대의 날짜가 현재 날짜와 같은지 확인해야 합니다.
이 함수와 같은 것을 사용하여 마지막으로 마감된 주문 시간을 얻을 수 있습니다.
{
datetime CloseTime = 0;
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber && OrderCloseTime()>CloseTime)
CloseTime = OrderCloseTime();
}
return(CloseTime);
}
안녕하세요 mladen님
그러나 코드의 이 부분을 어디에 삽입합니까? 아직 코딩에 익숙하지 않고 For 루프가 어떻게 작동하는지 알 수 없는 것 같아서 이렇게 질문해서 죄송합니다.
문안 인사
라이언
안녕하세요 mladen님
그러나 코드의 이 부분을 어디에 삽입합니까? 아직 코딩에 익숙하지 않고 For 루프가 어떻게 작동하는지 알 수 없는 것 같아서 이렇게 질문해서 죄송합니다.
문안 인사
라이언라이언
이 같은 :
if (TimeDayOfYear(TimeCurrent())==TimeDayOfYear(GetLastClosedOrderTime())) // 거래 없음
라이언
이 같은 :
if (TimeDayOfYear(TimeCurrent())==TimeDayOfYear(GetLastClosedOrderTime())) // 거래 없음
안녕하세요 mladen, 코드를 추가했지만 전역 변수 오류의 일부 형태를 제공하는 것 같습니다. 또한 정의되지 않은 변수 MagicNumber가 있다는 것을 알았습니다. 그 이유가 무엇인지 여쭤봐도 될까요? int 아래에 추가했지만 해당 변수의 용도가 무엇인지 잘 모르겠습니다.
조언하십시오. 기다려 주셔서 다시 한 번 감사드립니다.
//---- 입력 매개변수
외부 이중 TakeProfit = 1000.0;
extern 이중 랏 = 0.1;
외부 이중 손절매 = 980.0;
외부 정수 Entry_Hour_1st = 21;
//+----------------------------------------------- -------------------+
//| 전문가 초기화 기능 |
//+----------------------------------------------- -------------------+
정수 초기화()
{
//----
//----
리턴(0);
}
//+----------------------------------------------- -------------------+
//| 전문가 초기화 해제 기능 |
//+----------------------------------------------- -------------------+
정수 초기화()
{
//----
//----
리턴(0);
}
//+----------------------------------------------- -------------------+
//| 전문가 시작 기능 |
//+----------------------------------------------- -------------------+
정수 시작()
{
//+----------------------------------------------- -------------------+
//-- 트리거 트레이드
//+----------------------------------------------- -------------------+
int 티켓, 총계, MagicNumber;
이중 TP_Value, SL_Value;
날짜 시간 GetLastClosedOrderTime()
{
날짜/시간 CloseTime = 0;
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber && OrderCloseTime()>CloseTime)
닫기 시간 = 주문 닫기 시간();
}
반환(닫기 시간);
}
총계 = OrdersTotal(); // 현재 열려 있는 총 거래 수 확인
if(총 < 1)
{
if (Hour()==Entry_Hour_1st && ((High[0] - High[1]) > 0.00100) && ((High[1] - Low[1]) > 0.00100) && TimeDayOfYear(TimeCurrent()) != TimeDayOfYear (GetLastClosedOrderTime()))
{
if ((닫기[1] - 열기[1]) > 0.00100)
{
TP_Value = (닫기[1] - 열기[1]);
SL_값 = (낮음[1] - 0.0010);
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
if ((열기[1] - 닫기[1]) > 0.00100)
{
TP_Value = (열기[1] - 닫기[1]);
SL_값 = (낮음[1] - 0.0010);
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
if ((열기[1] - 닫기[1]) <= 0.00100)
{
TP_Value = (높음[1] - 낮음[1]);
SL_값 = (낮음[1] - 0.0010);
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
}
if (Hour()==Entry_Hour_1st && ((낮음[1] - 낮음[0]) > 0.00100) && ((높음[1] - 낮음[1]) > 0.00100) && TimeDayOfYear(TimeCurrent()) != TimeDayOfYear (GetLastClosedOrderTime()))
{
if ((닫기[1] - 열기[1]) > 0.00100)
{
TP_Value = (닫기[1] - 열기[1]);
SL_값 = (높음[1] + 0.0010);
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value,"내 EA",200,0,Red);
리턴(0);
}
if ((열기[1] - 닫기[1]) > 0.00100)
{
TP_Value = (열기[1] - 닫기[1]);
SL_값 = (높음[1] + 0.0010);
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value,"내 EA",200,0,Red);
리턴(0);
}
if ((열기[1] - 닫기[1]) <= 0.00100)
{
TP_Value = (높음[1] - 낮음[1]);
SL_값 = (높음[1] + 0.0010);
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value,"내 EA",200,0,Red);
반환(0);
}
}
}
반환(0);
}
//+----------------------------------------------- -------------------+
안녕하세요 mladen, 코드를 추가했지만 일종의 전역 변수 오류가 발생하는 것 같습니다. 또한 정의되지 않은 변수 MagicNumber가 있다는 것을 알았습니다. 그 이유가 무엇인지 여쭤봐도 될까요? int 아래에 추가했지만 해당 변수의 용도가 무엇인지 잘 모르겠습니다.
조언하십시오. 기다려 주셔서 다시 한 번 감사드립니다.
//---- 입력 매개변수
외부 이중 TakeProfit = 1000.0;
extern 이중 랏 = 0.1;
외부 이중 손절매 = 980.0;
외부 정수 Entry_Hour_1st = 21;
//+----------------------------------------------- -------------------+
//| 전문가 초기화 기능 |
//+----------------------------------------------- -------------------+
정수 초기화()
{
//----
//----
리턴(0);
}
//+----------------------------------------------- -------------------+
//| 전문가 초기화 해제 기능 |
//+----------------------------------------------- -------------------+
정수 초기화()
{
//----
//----
리턴(0);
}
//+----------------------------------------------- -------------------+
//| 전문가 시작 기능 |
//+----------------------------------------------- -------------------+
정수 시작()
{
//+----------------------------------------------- -------------------+
//-- 트리거 트레이드
//+----------------------------------------------- -------------------+
int 티켓, 총계, MagicNumber;
이중 TP_Value, SL_Value;
날짜 시간 GetLastClosedOrderTime()
{
날짜/시간 CloseTime = 0;
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber && OrderCloseTime()>CloseTime)
닫기 시간 = 주문 닫기 시간();
}
반환(닫기 시간);
}
총계 = OrdersTotal(); // 현재 열려 있는 총 거래 수 확인
if(총 < 1)
{
if (Hour()==Entry_Hour_1st && ((High[0] - High[1]) > 0.00100) && ((High[1] - Low[1]) > 0.00100) && TimeDayOfYear(TimeCurrent()) != TimeDayOfYear (GetLastClosedOrderTime()))
{
if ((닫기[1] - 열기[1]) > 0.00100)
{
TP_Value = (닫기[1] - 열기[1]);
SL_값 = (낮음[1] - 0.0010);
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
if ((열기[1] - 닫기[1]) > 0.00100)
{
TP_Value = (열기[1] - 닫기[1]);
SL_값 = (낮음[1] - 0.0010);
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
if ((열기[1] - 닫기[1]) <= 0.00100)
{
TP_Value = (높음[1] - 낮음[1]);
SL_값 = (낮음[1] - 0.0010);
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
}
if (Hour()==Entry_Hour_1st && ((낮음[1] - 낮음[0]) > 0.00100) && ((높음[1] - 낮음[1]) > 0.00100) && TimeDayOfYear(TimeCurrent()) != TimeDayOfYear (GetLastClosedOrderTime()))
{
if ((닫기[1] - 열기[1]) > 0.00100)
{
TP_Value = (닫기[1] - 열기[1]);
SL_값 = (높음[1] + 0.0010);
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value,"내 EA",200,0,Red);
리턴(0);
}
if ((열기[1] - 닫기[1]) > 0.00100)
{
TP_Value = (열기[1] - 닫기[1]);
SL_값 = (높음[1] + 0.0010);
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value,"내 EA",200,0,Red);
리턴(0);
}
if ((열기[1] - 닫기[1]) <= 0.00100)
{
TP_Value = (높음[1] - 낮음[1]);
SL_값 = (높음[1] + 0.0010);
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value,"내 EA",200,0,Red);
리턴(0);
}
}
}
리턴(0);
}
//+----------------------------------------------- -------------------+
그것은 기능이다
start() 함수의 본문 외부로 이동
↵
그것은 기능이다
start() 함수의 본문 외부로 이동안녕하세요 mladen, 기능을 시작 기능 밖으로 이동하려고 시도했지만 내 EA는 하루에 1개의 거래만 트리거하도록 제한하는 대신 하루에 1개 이상의 거래를 트리거합니다.
깨달음에 감사드립니다.
문안 인사
//---- 입력 매개변수
외부 이중 TakeProfit = 1000.0;
extern 이중 랏 = 0.1;
외부 이중 손절매 = 980.0;
외부 정수 Entry_Hour_1st = 21;
//+----------------------------------------------- -------------------+
//| 전문가 초기화 기능 |
//+----------------------------------------------- -------------------+
정수 초기화()
{
//----
//----
리턴(0);
}
//+----------------------------------------------- -------------------+
//| 전문가 초기화 해제 기능 |
//+----------------------------------------------- -------------------+
정수 초기화()
{
//----
//----
리턴(0);
}
//+----------------------------------------------- -------------------+
//| 전문가 시작 기능 |
//+----------------------------------------------- -------------------+
정수 매직넘버;
날짜 시간 GetLastClosedOrderTime()
{
날짜/시간 CloseTime = 0;
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber && OrderCloseTime()>CloseTime)
닫기 시간 = 주문 닫기 시간();
}
반환(닫기 시간);
}
정수 시작()
{
//+----------------------------------------------- -------------------+
//-- 트리거 트레이드
//+----------------------------------------------- -------------------+
int 티켓, 합계;
이중 TP_Value, SL_Value;
총계 = OrdersTotal(); // 현재 열려 있는 총 거래 수 확인
if(총 < 1)
{
if (Hour()==Entry_Hour_1st && ((High[0] - High[1]) > 0.00100) && ((High[1] - Low[1]) > 0.00100) && TimeDayOfYear(TimeCurrent()) != TimeDayOfYear (GetLastClosedOrderTime()))
{
if ((닫기[1] - 열기[1]) > 0.00100)
{
TP_Value = (닫기[1] - 열기[1]); // 긴 본문 값
SL_값 = (낮음[1] - 0.0010); // 오랫동안 항상 동일
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
if ((열기[1] - 닫기[1]) > 0.00100)
{
TP_Value = (열기[1] - 닫기[1]); // 짧은 본문의 값
SL_값 = (낮음[1] - 0.0010); // 오랫동안 항상 동일
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
if ((열기[1] - 닫기[1]) <= 0.00100)
{
TP_Value = (높음[1] - 낮음[1]); // 헤드와 테일을 포함한 전체 양초의 값
SL_값 = (낮음[1] - 0.0010); // 오랫동안 항상 동일
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
}
if (Hour()==Entry_Hour_1st && ((낮음[1] - 낮음[0]) > 0.00100) && ((높음[1] - 낮음[1]) > 0.00100) && TimeDayOfYear(TimeCurrent()) != TimeDayOfYear (GetLastClosedOrderTime()))
{
if ((닫기[1] - 열기[1]) > 0.00100)
{
TP_Value = (닫기[1] - 열기[1]); // 긴 본문 값
SL_값 = (높음[1] + 0.0010); // 짧게는 항상 동일
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value,"내 EA",200,0,Red);
리턴(0);
}
if ((열기[1] - 닫기[1]) > 0.00100)
{
TP_Value = (열기[1] - 닫기[1]); // 짧은 본문의 값
SL_값 = (높음[1] + 0.0010); // 짧게는 항상 동일
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value,"내 EA",200,0,Red);
리턴(0);
}
if ((열기[1] - 닫기[1]) <= 0.00100)
{
TP_Value = (높음[1] - 낮음[1]); // 헤드와 테일을 포함한 전체 양초의 값
SL_값 = (높음[1] + 0.0010); // 짧게는 항상 동일
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Value,Bid-TP_Value,"내 EA",200,0,Red);
리턴(0);
}
}
}
리턴(0);
}
//+----------------------------------------------- -------------------+
↵
안녕하세요 mladen, 기능을 시작 기능 밖으로 이동하려고 시도했지만 내 EA는 하루에 1개의 거래만 트리거하도록 제한하는 대신 하루에 1개 이상의 거래를 트리거합니다.
깨달음에 감사드립니다.
문안 인사
//---- 입력 매개변수
외부 이중 TakeProfit = 1000.0;
extern 이중 랏 = 0.1;
외부 이중 손절매 = 980.0;
외부 정수 Entry_Hour_1st = 21;
//+----------------------------------------------- -------------------+
//| 전문가 초기화 기능 |
//+----------------------------------------------- -------------------+
정수 초기화()
{
//----
//----
리턴(0);
}
//+----------------------------------------------- -------------------+
//| 전문가 초기화 해제 기능 |
//+----------------------------------------------- -------------------+
정수 초기화()
{
//----
//----
리턴(0);
}
//+----------------------------------------------- -------------------+
//| 전문가 시작 기능 |
//+----------------------------------------------- -------------------+
정수 매직넘버;
날짜 시간 GetLastClosedOrderTime()
{
날짜/시간 CloseTime = 0;
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber && OrderCloseTime()>CloseTime)
닫기 시간 = 주문 닫기 시간();
}
반환(닫기 시간);
}
정수 시작()
{
//+----------------------------------------------- -------------------+
//-- 트리거 트레이드
//+----------------------------------------------- -------------------+
int 티켓, 합계;
이중 TP_Value, SL_Value;
총계 = OrdersTotal(); // 현재 열려 있는 총 거래 수 확인
if(총 < 1)
{
if (Hour()==Entry_Hour_1st && ((High[0] - High[1]) > 0.00100) && ((High[1] - Low[1]) > 0.00100) && TimeDayOfYear(TimeCurrent()) != TimeDayOfYear (GetLastClosedOrderTime()))
{
if ((닫기[1] - 열기[1]) > 0.00100)
{
TP_Value = (닫기[1] - 열기[1]); // 긴 본문 값
SL_값 = (낮음[1] - 0.0010); // 오랫동안 항상 동일
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
if ((열기[1] - 닫기[1]) > 0.00100)
{
TP_Value = (열기[1] - 닫기[1]); // 짧은 본문의 값
SL_값 = (낮음[1] - 0.0010); // 오랫동안 항상 동일
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
if ((열기[1] - 닫기[1]) <= 0.00100)
{
TP_Value = (높음[1] - 낮음[1]); // 헤드와 테일을 포함한 전체 양초의 값
SL_값 = (낮음[1] - 0.0010); // 오랫동안 항상 동일
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,1,SL_Value,Ask+TP_Value,"내 EA",200,0,Green);
리턴(0);
}
}
if (Hour()==Entry_Hour_1st && ((낮음[1] - 낮음[0]) > 0.00100) && ((높음[1] - 낮음[1]) > 0.00100) && TimeDayOfYear(TimeCurrent()) != TimeDayOfYear (GetLastClosedOrderTime()))
{
if ((닫기[1] - 열기[1]) > 0.00100)
{
TP_Value = (닫기[1] - 열기[1]); // 긴 본문 값
SL_값 = (높음[1] + 0.0010); // 짧게는 항상 동일
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Va lue,Bid-TP_Value,"내 EA",200,0,빨간색);
리턴(0);
}
if ((열기[1] - 닫기[1]) > 0.00100)
{
TP_Value = (열기[1] - 닫기[1]); // 짧은 본문의 값
SL_값 = (높음[1] + 0.0010); // 짧게는 항상 동일
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Va lue,Bid-TP_Value,"내 EA",200,0,빨간색);
리턴(0);
}
if ((열기[1] - 닫기[1]) <= 0.00100)
{
TP_Value = (높음[1] - 낮음[1]); // 헤드와 테일을 포함한 전체 양초의 값
SL_값 = (높음[1] + 0.0010); // 짧게는 항상 동일
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,1,SL_Va lue,Bid-TP_Value,"내 EA",200,0,빨간색);
리턴(0);
}
}
}
리턴(0);
}
//+----------------------------------------------- -------------------+
tkuan77
이것을 교체하십시오:
if(총 < 1)
이것으로 :
if (총 < 1 && TimeDayOfYear(GetLastClosedOrderTime()) != TimeDayOfYear(TimeCurrent())) ;
그리고 더 이상 그렇게 해서는 안 된다.
tkuan77
이것을 교체하십시오:
if(총 < 1)
이것으로 :
if (총 < 1 && TimeDayOfYear(GetLastClosedOrderTime()) != TimeDayOfYear(TimeCurrent())) ;
그리고 더 이상 그렇게 해서는 안 된다.안녕하세요 mladen님, 코드를 입력한 후 하루에 1개의 거래를 실행하는 대신 계정이 터질 때까지 한 번에 여러 거래를 실행했습니다. 이 문제를 일으키는 일부 트리거 메커니즘 때문일 수 있습니까?
문안 인사
안녕하세요 mladen, 저는 거래를 실행한 후 보류 중인 모든 거래를 마감하는 이 특정 코드를 가지고 있습니다. 미래의 모든 보류 중인 거래 대신 거래를 시작한 후 현재의 보류 중인 거래만 취소하도록 설정하려면 어떻게 해야 합니까?
감사해요.....
정수 new_del()
{
int i,a;
정수 합계 = OrdersTotal();
문자열 주석, par;
for (i=total-1, i >=0, i--)
{
주문 선택(i,SELECT_BY_POS,MODE_TRADES);
if (OrderType()==OP_BUY || OrderType()==OP_SELL)
{
(a=total-1, a >=0, a--)
{
주문 선택(a,SELECT_BY_POS,MODE_TRADES);
commentario=OrderComment();
par=StringSubstr(설명,0,6);
if(OrderType()==OP_SELLSTOP)// && 주석==Symbol())
{
주문삭제(주문티켓());
Print("SELL_STOP 삭제"," 주문 유형:",OrderType());
반환(1);
}
if(OrderType()==OP_BUYSTOP)// && par==Symbol())
{
주문삭제(주문티켓());
Print("BUY_STOP 삭제"," 주문 유형:",OrderType());
반환(1);
}
}
}
}
}
안녕하세요 mladen, 저는 거래를 실행한 후 보류 중인 모든 거래를 마감하는 이 특정 코드를 가지고 있습니다. 미래의 모든 보류 중인 거래 대신 거래를 시작한 후 현재의 보류 중인 거래만 취소하도록 설정하려면 어떻게 해야 합니까?
감사해요.....
정수 new_del()
{
int i,a;
정수 합계 = OrdersTotal();
문자열 주석, par;
for (i=total-1, i >=0, i--)
{
주문 선택(i,SELECT_BY_POS,MODE_TRADES);
if (OrderType()==OP_BUY || OrderType()==OP_SELL)
{
(a=total-1, a >=0, a--)
{
주문 선택(a,SELECT_BY_POS,MODE_TRADES);
commentario=OrderComment();
par=StringSubstr(설명,0,6);
if(OrderType()==OP_SELLSTOP)// && 주석==Symbol())
{
주문삭제(주문티켓());
Print("SELL_STOP 삭제"," 주문 유형:",OrderType());
반환(1);
}
if(OrderType()==OP_BUYSTOP)// && par==Symbol())
{
주문삭제(주문티켓());
Print("BUY_STOP 삭제"," 주문 유형:",OrderType());
반환(1);
}
}
}
}
}tkuan77
"현재 보류 중인 거래"는 무엇을 의미하고 "미래 보류 중인 거래"는 무엇을 의미합니까?
tkuan77
"현재 보류 중인 거래"는 무엇을 의미하고 "미래 보류 중인 거래"는 무엇을 의미합니까?
안녕하세요 mladen님
현재 보류 중인 거래는 조건이 충족되면 ea가 2개의 보류 중인 거래를 설정한다는 의미입니다(롱 1개, 숏 1개). 따라서 긴 거래가 시작되었다고 말하면 ea는 자동으로 짧은 보류 거래를 취소합니다.
미래 보류 거래는 ea가 이전 보류 거래를 취소하고 조건이 다시 충족된다고 말한 후 ea가 2번의 보류 중인 거래를 추가로 설정해야 함을 의미합니다(롱 1개, 숏 1개). 그러나 ea가 현재 실행 중인 거래가 있는 경우 ea는 ea가 설정하려고 하는 보류 중인 주문 을 자동으로 취소합니다.
내가하려는 것은 거래가 시작된 후 시스템이 현재 보류중인 거래 만 취소하도록하는 것입니다. 도움을 주셔서 감사합니다
문안 인사