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

 
STARIJ :

브라우저에서 그래프 또는 어디에?

아니요, 터미널의 차트

 
Vitaly Muzichenko : 아니요, 차트는 터미널에 있습니다.
 //+------------------------------------------------------------------+
//| Скрипт для вызова калькулятора и проч           -Калькулятор.mq4 |
//+------------------------------------------------------------------+
#property strict

#import "shell32.dll"                    // Все строки кончаются 0
   int ShellExecuteW( int hwnd,           // Хендл родительского окна
                     string Operation,   // Указатель на строку операции. Open, Print, Explore
                     string File,       // Указатель на строку с именем исполняемого файла
                     string Parameters, // Указатель на строку с параметрами
                     string Directory,   // Указатель на строку с именем папки
                     int ShowCmd);       // 0 = показать
#import

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
{
   // Запустить калькулятор
  ShellExecuteW( 0 , "Open" , "Calc.exe" , "" , "" , 0 );

   // Открыть папку
   string terminal_data_path= TerminalInfoString ( TERMINAL_DATA_PATH );
  ShellExecuteW( 0 , "explore" , terminal_data_path+ "\\MQL4" , "" , "" , 1 );

   // Открыть HTML-файл
  ShellExecuteW( 0 , "Open" , terminal_data_path+ "\\DetailedStatement.htm" , "" , "" , 1 );

   // Открыть Яндекс
  ShellExecuteW( 0 , "Open" , "Yandex.ru" , "" , "" , 1 );
}
 
STARIJ :

그건 그렇고, 나는 외부 명령을 호출하는 것에 대해 기억하고 있습니다. 브라우저에 명령하는 방법을 알려주실 수 있습니까?

"http://bla-bla-bla 페이지를 열고 이미 있는 경우 해당 탭을 표시합니다."

ShellExecuteW(0,"Open"....)를 통해 새 탭을 열 때마다 기억

 
Artyom Trishkin :

10개가 나란히 있는데 같은 품질의 오이를 항상 50개로 삽니까?


시간을 통하여)

거래의 첫 번째 규칙 - 추세는 친구라는 것을 알고 있습니까?

 
Taras Slobodyanik : 거래의 첫 번째 규칙을 알고 있습니까? 추세는 당신의 친구입니까?

역사는 반복된다 - 위 - 아래 위 - 아래. 따라서 고점에서 매도, 저점에서 매수

 
STARIJ :

감사합니다. 모두 잘 작동했습니다.

 
Taras Slobodyanik :

시간을 통하여)

거래의 첫 번째 규칙 - 추세는 친구라는 것을 알고 있습니까?

그리고 누가 모르지만 오이가있는 창고가 지붕에 가득 차면 (오이 구매 추세의 끝) 창고에 공간을 확보하기 위해 오이를 판매 할 시간이되면 나는 사지 않을 것입니다 아직 오이의 배치. 하지만 먼저 상하거나 무자비하게 훔치거나 까마귀에게 잡아먹힐 상자를 창고 옥상에 두지 않기 위해 한두 개씩 팔겠습니다.

그리고 저에게 "위쪽"은 창고 지붕의 높이를 볼 수 있을 때, 아래에서 바닥의 높이를 볼 수 있을 때입니다...

이 같은...

 
Taras Slobodyanik :

시간을 통하여)

거래의 첫 번째 규칙 - 추세는 친구라는 것을 알고 있습니까?


이 규칙은 당신이 시장 조성자이거나 최소한 DC이고 그 형성과 발전을 알고 있는 경우에만 관련이 있습니다. 평균적인 거래자의 관점에서 볼 때 추세는 이 시장에서 볼 수 있는 가장 비열하고 가장 위험한 짐승입니다.

100%로 결정되기 때문에 완료시에만)))

그런 친구와 함께라면 적이 필요 없다...
 
Taras Slobodyanik :

시간을 통하여)

거래의 첫 번째 규칙 - 추세는 친구라는 것을 알고 있습니까?

이것은 첫 번째 규칙이 아닙니다. 첫째는 싸게 사서 비싸게 파는 것이다.

그리고 상단이든 하단이든, 추세에 따라 또는 반대하는 것은 더 이상 규칙이 아니라 개인의 취향입니다.

 

좋은 하루 Artyom . 내 이름은 다닐입니다. 질문은 다음입니다. Expert Advisor를 작성했거나 MQL4의 비디오 자습서에서 다시 작성했습니다. 분명히 오류가 있고 컴파일되지 않습니다. 도와줄 수 있습니까?

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

//| test7.mq4 |

//| Copyright 2017, MetaQuotes Software Corp. |

//| https://www.mql5.com |

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

#property copyright "Copyright 2017, MetaQuotes Software Corp."

#속성 링크 "https://www.mql5.com"

#속성 버전 "1.00"

#속성엄격

//------------------------------------------------ --------------------

외부 이중 로트 = 0.1;

extern int TakeProfit = 300;

extern int 손절매 = 50;

외부 int 매직 = 777;

extern int 미끄러짐 = 3;

//------------------------------------------------ --------------------

extern string TMA = "TMA 표시기의 매개변수";

extern string TimeFrame = "현재 시간 프레임";

extern int HalfLength = 56;

extern int 가격 = PRICE_CLOSE;

외부 이중 ATRMultiplier = 2.0;

extern int ATRPPeriod = 100;

extern bool 보간 = true;

//------------------------------------------------ --------------------

이중 PriceHigh, PriceLow, SL, TP;

인트 티켓;



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

//| 전문가 초기화 기능 |

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

int OnInit()

{

if (숫자 == 3 || 숫자 == 5);

{

이익실현 *=10;

손절매 *=10;

미끄러짐 *=10;

}

반환(INIT_SUCCESSED);

}

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

//| 전문적인 초기화 해제 기능 |

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

무효 OnDeinit(const int 이유)

{

}

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

//| 전문가 틱 기능 |

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

무효 OnTick()

{

PriceHigh = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, 가격, ATRMultiplier, ATRPPeriod, Interpolate, 1, 0);

PriceLow = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, 가격, ATRMultiplier, ATRPPeriod, Interpolate, 2, 0);

if (CountSell() == 0 && Bid >= PriceHigh)

{

tiket = OrderSend(Symbol(), OP_SELL, lot, Bid, Slippage, 0, 0, "TMA 로봇", Magic, 0, Red);

만약 (티켓 > 0)

{

SL = NormalizeDouble(Bid + StopLoss*Point, Digits);

TP = NormalizeDouble(Bid - TakeProfit*Point, Digits);

if (OrderSelect(티켓, SELECT_BY_TICKET))

OrderModify(티켓, OrderOpenPrice(), SL, TP, 0);

}

}

}

//------------------------------------------------ --------------------------------------------------

if (CountBuy() == 0 && 묻기 <= PriceLow)

{

tiket = OrderSend(Symbol(), OP_BUY, lot, Ask, Slippage, 0, 0, "TMA 로봇", Magic, 0, Blue);

만약 (티켓 > 0)

{

TP = NormalizeDouble(Ask + TakeProfit*포인트, 자릿수);

SL = NormalizeDouble(Ask - StopLoss*Point, Digits);

if (OrderSelect(티켓, SELECT_BY_TICKET))

OrderModify(티켓, OrderOpenPrice(), SL, TP, 0);

}

}

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

정수 CountSell()

{

정수 개수 = 0;

for (int trade = OrdersTotal()-1; trade>=0; trade--)

{

if (OrderSelect(trade, SELECT_BY_POS, MODE_TRADES))

{

if (OrderSymbol() == Symbol() && OrderMagicNumber) == Magic && OrderType() == OP_SELL)

카운트++;

}

}

반환(카운트);

}

//------------------------------------------------ -------------------------------------------------- ---

정수 CountBuy()

{

정수 개수 = 0;


for (int trade = OrdersTotal()-1; trade>=0; trade--)

{

if (OrderSelect(trade, SELECT_BY_POS, MODE_TRADES))

{

if (OrderSymbol() == Symbol() && OrderMagicNumber) == Magic && OrderType() == OP_BUY)

카운트++;

}

}

리턴(카운트);

}