MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 1072

 
jarikn :
감사하다. 나는 이것을 정리할 것이다

그리고 한때 이익을 위해 일했던 예전 시스템을 상기시켜주셔서 감사합니다. 여가 시간에 코딩을 하고 현재 시장을 확인해야 합니다.

 
jarikn :
안녕하세요. 여러분, 도와주세요. 저는 프로그래밍이 처음입니다.
나는 이제 다음 조건을 추가해야 하는 간단한 고문을 작성했습니다.
매수 주문의 손절매가 발동되면 매도 주문을 엽니다.
이 코드를 도와주세요

더 많은 옵션:

1. Buy를 열 때 Buy 주문의 손절매 수준에서 SellStop 주문을하십시오. 그러면 서버가 당신의 소원을 들어줄 것입니다. 그러나 극히 드물지만 목표가 좋은 상황에서는 그렇지 않습니다 :-)

2. 손절매 를 전혀 설정하지 않고, 두 배의 거래량의 SellStop을 설정하십시오. 또한 서버에서 신속하게 처리됩니다. 하루가 끝날 때 또는 마진이 고갈되었을 때 카운터 주문을 상호(CloseBy) 닫는 일종의 잠금 해제 스레드를 실행하는 데 필요합니다.

그러나 또 다른 뉘앙스가 있습니다. 중지 주문(및 손절매도)이 작동하지 않을 수 있습니다. 그리고 꽤 흔하다.
즉, "전투" 로봇에서는 여전히 재확인해야 합니다.
Общие принципы - Торговые операции - Справка по MetaTrader 5
Общие принципы - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Перед тем как приступить к изучению торговых функций платформы, необходимо создать четкое представление об основных терминах: ордер, сделка и позиция. — это распоряжение брокерской компании купить или продать финансовый инструмент. Различают два основных типа ордеров: рыночный и отложенный. Помимо них существуют специальные ордера Тейк Профит...
 
Vladimir Simakov :

그는 당신이 const char * 값으로 wchar_t 엔티티를 초기화할 수 없다고 씁니다.

이해하지 못한다면 불행히도 언어의 기초 가 없는 것입니다. 특히 mql과 같은 세부 사항에 대해 dll을 작성하기에는 너무 이릅니다. 기본부터 시작하세요.

그래서 그들이 이것을 조언하는 이유는 무엇입니까? 예, 의심할 여지 없이 매우 일찍 또는 매우 늦게 시작해야 합니다. 하지만 시작해야 합니다. 이 도서관 학습 순간에 좋은 시간은 지금이 아니면 결코 없을 것입니다.

 
Maxim Kuznetsov :

2. 손절매 를 전혀 설정하지 말고, 두 배의 거래량의 SellStop을 설정하십시오. 또한 서버에서 신속하게 처리됩니다. 하루가 끝날 때 또는 마진이 고갈되었을 때 카운터 주문을 상호(CloseBy) 닫는 일종의 잠금 해제 스레드를 실행하는 데 필요합니다.

CloseBy 를 사용하면 더 조심해야 합니다. 모든 DC가 지원하는 것은 아닙니다.

 
저는 프로그래머가 아니므로 가장 간단한 질문을 해결할 수 없습니다. 0 막대를 시간, 분:00, 시간 00:,01:,02: 등에 바인딩하는 방법 누군가 나에게 말해 줄 수 있니?
 
Creativ :
저는 프로그래머가 아니므로 가장 간단한 질문을 해결할 수 없습니다. 0 막대를 시간, 분:00, 시간 00:,01:,02: 등에 바인딩하는 방법 누군가 나에게 말해 줄 수 있니?

이를 위한 기능이 있습니다

 iTime (символ,таймфрейм, номер бара)

막대의 시간을 반환합니다.

 

안녕하세요. 여러분, 도와주세요. 저는 프로그래밍이 처음입니다.
MQL4 코드에서 이것을 달성하는 방법.
예를 들어 A 키를 누르면 차트에 <Screenshot_2> 커서가 생깁니다.
사각형 그리기 버튼 <Screenshot_1>에는 단축키가 없습니다. 이 기능을 얻는 방법.

스크린샷_1

스크린샷_1

스크린샷_2

스크린샷_2

  감사 합니다.

 
여러분, 고문의 도움을 받으십시오. 난 이미 자에.... 어떤 식으로든 끝낼 수 없어, 실수만 있어.
요지는-
Tma 공정 표시기에서 작동합니다.
1) 가격이 상단 라인 위로 올라가는 즉시 매도 주문이 열리고, 가격이 하단 라인보다 낮아지면 매수 주문 이 열립니다.
별짓을 다 했지만 문제는,
2) 손절매가 발동되는 즉시 동일한 주문이 오픈됩니다! 이 버그를 어떻게 고칠 수 있습니까?
3) 가격이 반대선을 넘을 때 주문이 마감되지 않습니다! 작동하는 것처럼 보이지만 아니요, 손절매나 차익 실현으로 마감됩니다.

나는 또한 그러한 조건을 추가하고 싶습니다 - 매수에 대한 손절매가 발동되면 매도 주문을 여십시오. 하지만 이걸로 스스로 해결할 수 있을 것 같아요. 이 오류를 수정하도록 도와주세요.
첨부된 것은 스크립트와 지표입니다. 엄격하게 판단하지 마십시오. 저는 프로그래머가 아닙니다.)))
파일:
777.mq4  10 kb
TMA_Fair.mq4  9 kb
 

매수-매도 전환에 도움을 요청합니다.

무효 OnTick()

{

MAprice=iMA(Symbol(),0,MAperiod,MAshift,MODE_SMA,PRICE_CLOSE,1);

if(CountBuy() + CountSell() == 0 && 묻기 > 가격)

{

if(OrderSend(Symbol(),OP_BUY,lot,Ask,slip,0,0,NULL,magic,0,clrBlue)<1)

Print(" 구매 주문 을 열지 못했습니다!");

if(CountBuy()>=1)

{

가격 = FindLastBuyPrice();

if((가격 - 묻기) >= 단계*포인트)

{

if(OrderSend(Symbol(),OP_BUY,lot,Ask,slip,0,0,NULL,magic,0,clrBlue)<1)

Print("구매 주문을 열지 못했습니다!");

}

}

if(CountBuy() + CountSell() == 0 && 입찰가 < MAprice)

{

if(OrderSend(Symbol(),OP_SELL,lot,Bid,slip,0,0,NULL,magic,0,clrRed)<1)

Print("판매 주문을 열지 못했습니다!");

}

}

if(CountSell()>=1)

{

가격 = FindLastSellPrice();

if((price -Bid) >= 단계*포인트)

{

if(OrderSend(Symbol(),OP_SELL,lot,Bid,slip,0,0,NULL,magic,0,clrRed)<1)

Print("판매 주문을 열지 못했습니다!");

}

}

이중 연산 = 계산 이익();

if(op>=이익)

{

CloseAll();

}

}


//+----------------------------------------------- --------------------+

CloseAll() 무효화


또는 어디에서 공부합니까?

Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Приказы на проведение торговых операций оформляются ордерами. Каждый ордер имеет множество свойств для чтения, информацию по ним можно получать с помощью функций Идентификатор позиции, который ставится на ордере при его исполнении. Каждый исполненный ордер порождает сделку, которая открывает новую или изменяет уже существующую позицию...
 
이 함수는 막대를 시간에 묶지 않습니다. Bar[0]=:00(분) 또는 01:00, 02:00 ...매일 필요합니다. 따라서 특정 시간이 되어야만 알고리즘이 계산됩니다. 나머지 시간은 지표가 나에게 달려 있습니다.
Seric29 :

이를 위한 기능이 있습니다

막대의 시간을 반환합니다.