함수에 직접 수표를 추가했습니까? 이제 그들은 전송된 로트로 마지막 마감 위치를 확인하고 로트는 아마도 항상 0 또는 정수와 같을 것입니다. 변수 ll은 double 유형이어야 합니다. 그리고 왜 많은 수표가 있습니까?
당신이 달성하고 싶은 것을 작성하면 그들이 당신에게 말할 것입니다 :)
네, 제가 이루고자 하는 바를 구체적으로 적거나, 오히려 이미 다 이루었지만 버그가 1개 있습니다.
double을 int로 바꾸면 원래는 double인데 왜 변경하고 보니 그냥 돌려주는 걸 깜빡하고 추첨을 통해 확인하지 않아도 함수를 따로따로 사용해도 결과가 안바뀌어서 아마 제가 안한거겠죠? 여기에 캔버스 확인을 올바르게 포함하지 마십시오. 한 마디로 버그보다 알아낼 수 있도록 도와주세요.
이것이 요청의 모습입니다
вот так работает без проблем
bool BuystopLotA=isCloseLastPosByStop( NULL ,OP_BUY,MagBuy,LotA);
bool BuyTakeLotA=isCloseLastPosByTake( NULL ,OP_BUY,MagBuy,LotA);
bool SellstopLotC=isCloseLastPosByStop( NULL ,OP_SELL,MagBuy,LotC);
bool SellTakeLotC=isCloseLastPosByTake( NULL ,OP_SELL,MagBuy,LotC);
при добовлении вот этих запросов
bool BuystopLotB=isCloseLastPosByStop( NULL ,OP_BUY,MagBuy,LotB);
bool BuyTakeLotB=isCloseLastPosByTake( NULL ,OP_BUY,MagBuy,LotB);
начинает возвращять True не по одному а по двум запросам
BuyTakeLotB и BuystopLotA
도와주세요, 프랙탈 분석에 대한 조언자가 있습니다. 좋은 매개변수를 골랐고 마틴게일 로트를 넣도록 추가해야 합니다(잃으면 2개 더). .여기에 조언자가 있습니다.
//+----------------------------------------------- --------------------+
//| 도형.mq4 |
//| 까지 |
//| http://www.forex-tradexperts-to.narod.ru |
//+----------------------------------------------- --------------------+
#재산권 "TO"
#속성 링크 "http://www.forex-tradexperts-to.narod.ru"
#include <WinUser32.mqh>
외부 int TP_Fract_3=300;
외부 int SL_Fract_3=200;
외부 정수 TP_Fract_11=500;
외부 int SL_Fract_11=300;
extern bool buy_Fract_3=참;
extern 부울 판매_Fract_3=참;
extern bool buy_Fract_11=참;
extern 부울 판매_Fract_11=참;
extern 부울 subtvergdenie=거짓;
extern int tofrat=10;
외부 이중 로트=0.1;
외부 정수 ID = 5452;
스트링컴;
이중 확산;
정수 초기화()
{
com=DoubleToStr(ID,0);
Spread=MarketInfo(Symbol(),MODE_SPREAD)*포인트;
리턴(0);
}
정수 초기화()
{
리턴(0);
}
날짜 시간 t1,t2=0;
bool order(두 배 가격, int 유형, string c, int m)
{
정수 나;
for(i=OrdersTotal()-1;i>=0;i--)
{
주문 선택(i,SELECT_BY_POS,MODE_TRADES);
if(OrderComment()==c && OrderMagicNumber()==m && OrderOpenPrice()==가격 && OrderType()==유형)반품(거짓);
if(i==0)반환(참);
}
if(OrdersTotal()==0)return(true);
}
정수 시작()
{
int i,ret;
t1=시간[0];
if(t1!=t2)
{
int fract_buy_3=iHighest(Symbol(), Period(),MODE_HIGH,5,1);
int fract_sell_3=iLowest(Symbol(), Period(),MODE_LOW,5,1);
int fract_buy_11=iHighest(Symbol(), Period(),MODE_HIGH,21,1);
int fract_sell_11=iLowest(Symbol(), Period(),MODE_LOW,21,1);
if( fract_buy_3==3 && buy_Fract_3==true)
{
if(OrdersTotal()==0)if(order(High[fract_buy_3]+tofract*Point+spread,4,com,5))OrderSend(Symbol(),OP_BUYSTOP,lots,High[fract_buy_3]+tofract*Point+ 스프레드 ,10,높음[fract_buy_3]+tofract*Point-SL_Fract_3*Point,High[fract_buy_3]+tofract*Point+spread+TP_Fract_3*Point,com,5);
for(i=OrdersTotal()-1;i>=0;i--)
{
주문 선택(i,SELECT_BY_POS,MODE_TRADES);
if(OrderComment()==com && OrderMagicNumber()==5 && OrderType()==4)
{
OrderModify(OrderTicket(),높음[fract_buy_3]+tofract*Point+spread, 높음[fract_buy_3]+tofract*Point-SL_Fract_3*Point, High[fract_buy_3]+tofract*Point+spread+TP_Fract_3*Point,0,Blue);
부서지다;
}
if(i==0)if(order(높은[fract_buy_3]+tofract*Point+spread,4,com,5))
{
if(확인)
{
ret=MessageBox("신호 "+Symbol()+" H1 BUYSTOP "+"\n주문을 설정하시겠습니까?", "신호", MB_YESNO|MB_ICONQUESTION);
if(ret==IDYES)OrderSend(Symbol(),OP_BUYSTOP,lots,High[fract_buy_3]+tofract*Point+spread,10,High[fract_buy_3]+tofract*Point-SL_Fract_3*Point,High[fract_buy_3]+tofract* 포인트+스프레드+TP_Fract_3*포인트,com,5);
}
if(!podtvergdenie)OrderSend(Symbol(),OP_BUYSTOP,lots,High[fract_buy_3]+tofract*Point+spread,10,High[fract_buy_3]+tofract*Point-SL_Fract_3*Point,High[fract_buy_3]Spreadtofract*Point+ +TP_Fract_3*포인트,com,5);
}
}
}
if( fract_sell_3==3 && 판매_Fract_3==true)
{
if(OrdersTotal()==0)if(order(Low[fract_sell_3]-tofract*Point,5,com,5))OrderSend(Symbol(),OP_SELLSTOP,lots,Low[fract_sell_3]-tofract*Point,10, 낮음[fract_sell_3]+확산-tofract*Point+SL_Fract_3*Point,Low[fract_sell_3]-tofract*Point-TP_Fract_3*Point,com,5);
for(i=OrdersTotal()-1;i>=0;i--)
{
주문 선택(i,SELECT_BY_POS,MODE_TRADES);
if(OrderComment()==com && OrderMagicNumber()==5 && OrderType()==5)
{
OrderModify(OrderTicket(),낮음[fract_sell_3]-tofract*Point,낮음[fract_sell_3]+spread-tofract*Point+SL_Fract_3*Point,Low[fract_sell_3]-tofract*Point-TP_Fract_3*Point,0,Red);
부서지다;
}
if(i==0)if(order(낮음[fract_sell_3]-tofract*Point,5,com,5))
{
if(확인)
{
ret=MessageBox("신호 "+Symbol()+" H1 SELLSTOP "+"\n주문을 설정하시겠습니까?", "신호", MB_YESNO|MB_ICONQUESTION);
if(ret==IDYES)OrderSend(Symbol(),OP_SELLSTOP,lots,Low[fract_sell_3]-tofract*Point,10,Low[fract_sell_3]+spread-tofract*Point+SL_Fract_3*Point,Low[fract_sell_3]-tofract* Point-TP_Fract_3*Point,com,5);
}
if(!podtvergdenie)OrderSend(Symbol(),OP_SELLSTOP,lots,Low[fract_sell_3]-tofract*Point,10,Low[fract_sell_3]+spread-tofract*Point+SL_Fract_3*Point,Low[fract_sell_3]-tofract TP_Fract_3*Point,com,5);
}
}
}
if( fract_buy_11==11 && buy_Fract_11==true)
{
if(OrdersTotal()==0)if(order(High[fract_buy_11]+tofract*Point+spread,4,com,21))OrderSend(Symbol(),OP_BUYSTOP,lots,High[fract_buy_11]+tofract*Point+ 스프레드 ,10,높음[fract_buy_11]+tofract*Point-SL_Fract_11*Point,High[fract_buy_11]+tofract*Point+spread+TP_Fract_11*Point,com,21);
for(i=OrdersTotal()-1;i>=0;i--)
{
주문 선택(i,SELECT_BY_POS,MODE_TRADES);
if(OrderComment()==com && OrderMagicNumber()==21 && OrderType()==4)
{
OrderModify(OrderTicket(),High[fract_buy_11]+tofract*Point+spread, High[fract_buy_11]+tofract*Point-SL_Fract_11*Point, High[fract_buy_11]+tofract*Point+spread+TP_Fract_11*Point,0,Blue)
부서지다;
}
if(i==0)if(order(고가[fract_buy_11]+tofract*Point+spread,4,com,21))
{
if(확인)
{
ret=MessageBox("신호 "+Symbol()+" H4 BUYSTOP "+"\n주문을 설정하시겠습니까?", "신호", MB_YESNO|MB_ICONQUESTION);
if(ret==IDYES)OrderSend(Symbol(),OP_BUYSTOP,lots,High[fract_buy_11]+tofract*Point+spread,10,High[fract_buy_11]+tofract*Point-SL_Fract_11*Point,High[fract_buy_11]+tofract 포인트+스프레드+TP_Fract_11*포인트,com,21);
}
if(!podtvergdenie)OrderSend(Symbol(),OP_BUYSTOP,lots,High[fract_buy_11]+tofract*Point+spread,10,High[fract_buy_11]+tofract*Point-SL_Fract_11*Point,High[fract_buy_11]+spreadtof +TP_Fract_11*포인트,com,21);
}
}
}
if( fract_sell_11==11 && Sell_Fract_11==true)
{
if(OrdersTotal()==0)if(order(Low[fract_sell_11]-tofract*Point,5,com,21))OrderSend(Symbol(),OP_SELLSTOP,lots,Low[fract_sell_11]-tofract*Point,10, 낮음[fract_sell_11]+확산-tofract*Point+SL_Fract_11*Point,Low[fract_sell_11]-tofract*Point-TP_Fract_11*Point,com,21);
for(i=OrdersTotal()-1;i>=0;i--)
{
주문 선택(i,SELECT_BY_POS,MODE_TRADES);
if(OrderComment()==com && OrderMagicNumber()==21 && OrderType()==5)
{
OrderModify(OrderTicket(),낮음[fract_sell_11]-tofract*Point,낮음[fract_sell_11]+spread-tofract*Point+SL_Fract_11*Point,Low[fract_sell_11]-tofract*Point-TP_Fract_11*Point,0,Red)
부서지다;
}
if(i==0)if(order(낮음[fract_sell_11]-tofract*Point,5,com,21))
{
if(확인)
{
ret=MessageBox("신호 "+Symbol()+" H4 BUYSTOP "+"\n주문을 설정하시겠습니까?", "신호", MB_YESNO|MB_ICONQUESTION);
if(ret==IDYES)OrderSend(Symbol(),OP_SELLSTOP,lots,Low[fract_sell_11]-tofract*Point,10,Low[fract_sell_11]+spread-tofract*Point+SL_Fract_11*Point,Low[fract_tofract*11]- Point-TP_Fract_11*Point,com,21);
}
if(!podtvergdenie)OrderSend(Symbol(),OP_SELLSTOP,lots,Low[fract_sell_11]-tofract*Point,10,Low[fract_sell_11]+spread-tofract*Point+SL_Fract_11*Point,Low[fract_tell_11]Point TP_Fract_11*포인트,컴,21);
}
}
}
t2=시간[0];
}
반환(0);
}
나는 러시아어로 글을 잘 쓰지 못합니다. 죄송합니다!
나는 러시아어로 글을 잘 쓰지 못합니다. 죄송합니다!
누가 Klimov 블록을 도울 수 있는지 알려주세요. 문제는 마지막으로 닫힌 값이 아니라 조건에 의해 마지막으로 닫힌 값을 반환한다는 것입니다.
2가지 조건에서 토비시
동시에 두 값에 대해 True를 반환합니다.
조건에 따라 마지막 주문이 아닌 마지막으로 마감된 주문 만 사용하도록 하는 방법,
여기에 코드 자체가 있습니다. 편의를 위해 수표를 많이 추가했습니다.
누가 Klimov 블록을 도울 수 있는지 알려주세요. 문제는 마지막으로 닫힌 값이 아니라 조건에 의해 마지막으로 닫힌 값을 반환한다는 것입니다.
2 조건에서 tobish
동시에 두 값에 대해 True를 반환합니다.
조건에 따라 마지막 주문이 아닌 마지막으로 마감된 주문 만 사용하도록 하는 방법,
여기에 코드 자체가 있습니다. 편의를 위해 체크를 많이 추가했습니다.
함수에 직접 수표를 추가했습니까? 이제 그들은 전송된 로트로 마지막 마감 위치 를 확인하고 로트는 아마도 항상 0 또는 정수와 같을 것입니다. 변수 ll은 double 유형이어야 합니다. 그리고 왜 많은 수표가 있습니까?
당신이 달성하고 싶은 것을 작성하면 그들이 당신에게 말할 것입니다 :)
예, 그리고 로트가 int인 이유는 무엇입니까? 롯은 항상 두 배였습니다.
그렇게 할 수 있습니다. 하나의 주문이 남아 있을 때 남은 주문을 확인하고 반대 주문을 검색하십시오.
누가 Klimov 블록을 도울 수 있는지 알려주십시오 ...
함수에 직접 수표를 추가했습니까? 이제 그들은 전송된 로트로 마지막 마감 위치를 확인하고 로트는 아마도 항상 0 또는 정수와 같을 것입니다. 변수 ll은 double 유형이어야 합니다. 그리고 왜 많은 수표가 있습니까?
당신이 달성하고 싶은 것을 작성하면 그들이 당신에게 말할 것입니다 :)
네, 제가 이루고자 하는 바를 구체적으로 적거나, 오히려 이미 다 이루었지만 버그가 1개 있습니다.
double을 int로 바꾸면 원래는 double인데 왜 변경하고 보니 그냥 돌려주는 걸 깜빡하고 추첨을 통해 확인하지 않아도 함수를 따로따로 사용해도 결과가 안바뀌어서 아마 제가 안한거겠죠? 여기에 캔버스 확인을 올바르게 포함하지 마십시오. 한 마디로 버그보다 알아낼 수 있도록 도와주세요.
이것이 요청의 모습입니다
예, 그리고 로트가 int인 이유는 무엇입니까? 롯은 항상 두 배였습니다.
그렇게 할 수 있습니다. 하나의 주문이 남아 있을 때 남은 주문을 확인하고 반대 주문을 검색하십시오.
tobish를 여는 조건이 변경되기 때문에 모든 것이 그렇게 간단하지는 않습니다. 판매로 2가 될 수 있으며이 검색은 아무 것도 찾지 못합니다.
다른 분기에 메시지를 복제하지 마십시오. 이는 잘못된 형식입니다.
죄송합니다, 다른 주제의 동일한 게시물을 삭제하는 것을 잊지 않도록 노력하겠습니다.