stop loss 를 닫은 후 메시지를 표시하고 싶지만 mt4에서는 아무 일도 일어나지 않습니다.
int init() { //----
//---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //----
//---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ string sy="NULL"; int op=-1; int mn=-1; bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) { datetime t; double ocp, osl; int dg, i, j=-1, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol(); for (i=0; i<k; i++) { if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) { if (OrderSymbol()==sy || sy=="") { if (OrderType()==OP_BUY || OrderType()==OP_SELL) { if (op<0 || OrderType()==op) { if (mn<0 || OrderMagicNumber()==mn) { if (t<OrderCloseTime()) { t=OrderCloseTime(); j=i; } } } } } } } if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) { dg=MarketInfo(sy, MODE_DIGITS); if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2; ocp=NormalizeDouble(OrderClosePrice(), dg); osl=NormalizeDouble(OrderStopLoss(), dg); if (ocp==osl) return(True); } return(False); } int start() { //---- bool stopl; stopl = isCloseLastPosByStop(sy,op,mn); if (stopl == true) Alert ("последняя сделка закрылась по s/l"); //---- return(0); }
친애하는 포럼 사용자! 검토를 위해 "잔액 차트" 표시기를 게시합니다. 별도의 창에서 불필요하지 않을 것 같습니다. 실시간으로 자신의 잔액 변경에 대한 시각적 제어, 결국 고문의 수익성에 대한 제어 ... 단지 작동하지 않을뿐입니다 ... " 내가 조각했다"는 말은 잘 이해가 되지 않는다. 몇 가지 지표가 나타났습니다 - 이것에 문제가 있습니다 ... 수정 해 주시면 감사하겠습니다. 내가 얻고 싶었던 것 - 나는 썼다. 파쇄, 부끄러워하지 마십시오 - 결과가 있을 것입니다! 아마도 다른 누군가가 그것을 필요로 할 것입니다. 그 일은 불필요하지 않은 것 같습니다 ...
stop loss 를 닫은 후 메시지를 표시하고 싶지만 mt4에서는 아무 일도 일어나지 않습니다.
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
string sy="NULL";
int op=-1;
int mn=-1;
bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
datetime t;
double ocp, osl;
int dg, i, j=-1, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
}
}
}
}
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
dg=MarketInfo(sy, MODE_DIGITS);
if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
ocp=NormalizeDouble(OrderClosePrice(), dg);
osl=NormalizeDouble(OrderStopLoss(), dg);
if (ocp==osl) return(True);
}
return(False);
}
int start()
{
//----
bool stopl;
stopl = isCloseLastPosByStop(sy,op,mn);
if (stopl == true)
Alert ("последняя сделка закрылась по s/l");
//----
return(0);
}
친애하는 포럼 사용자! 검토를 위해 "잔액 차트" 표시기를 게시합니다. 별도의 창에서 불필요하지 않을 것 같습니다. 실시간으로 자신의 잔액 변경에 대한 시각적 제어, 결국 고문의 수익성에 대한 제어 ... 단지 작동하지 않을뿐입니다 ... " 내가 조각했다"는 말은 잘 이해가 되지 않는다. 몇 가지 지표가 나타났습니다 - 이것에 문제가 있습니다 ... 수정 해 주시면 감사하겠습니다. 내가 얻고 싶었던 것 - 나는 썼다. 파쇄, 부끄러워하지 마십시오 - 결과가 있을 것입니다! 아마도 다른 누군가가 그것을 필요로 할 것입니다. 그 일은 불필요하지 않은 것 같습니다 ...
모든 막대에 1개의 잔액이 있습니까?) 왜 필요한가요?
나는 문제를 정확하게 설명하지 않았다고 생각합니다. 아마도 더 정확할 것입니다.
끼워 넣다. 그러나 이것은 두 번째입니다. 그리고 가장 중요한 것은 포지션을 오픈/마감 한 후 이러한 변화를 관찰하고 싶습니다 ...
테스터와 같은 균형선 같은 것이 있을 텐데, 현실에서만!?,,,
나는 문제를 정확하게 정의하지 않았다고 생각합니다. 아마도 더 정확할 것입니다.
거래 내역을 읽고 다음 포지션이 청산된 시점의 잔고를 계산해야 합니다.
주식은 조금 더 복잡하지만 똑같이 할 수 있습니다.
모든 계산은 표준 로트로 축소하거나 포인트로 계산할 수 있습니다.
윈도우 문제...
#property indicator_separate_window 라인을 표준 표시기에 삽입합니다. 그 후 MT4는 금융 상품에 첨부하기를 원하지 않습니다. 왜요?
윈도우 문제...
#property indicator_separate_window 라인을 표준 표시기에 삽입합니다. 그 후 MT4는 금융 상품에 첨부하기를 원하지 않습니다. 왜요?
아마도 값이 매우 작고 아래 어딘가에 있기 때문일 수 있습니다(창 밖).
아마도 값이 매우 작고 아래 어딘가(창 밖)에 있기 때문일 수 있습니다.
그러나 이론적으로 비어 있지만 별도의 창이 있어야합니까?
그래도 - 인디케이터도 어드바이저도 붙어있지 않습니다....
윈도우 문제...
#property indicator_separate_window 라인을 표준 표시기에 삽입합니다. 그 후 MT4는 금융 상품에 첨부하기를 원하지 않습니다. 왜요?