MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 224

 
Alekseu Fedotov:

枝は4つ折りです。
このブランチは、fiveへの新規参入者が移行しやすいように、クロスプラットフォームのコードを歓迎します。
 
最後のMA交差のバーを返す関数を書くのを助ける、最後の交差とpenultimate交差の間に10バーがあり、最後の交差の点から最小値に与えられたポイント数があることを与えられた。
ファイル:
test.mq4  41 kb
 
Artyom Trishkin:
このブランチは、Fiveへの新規参入者の移行を容易にするために、クロスプラットフォームのコードを歓迎します。

正直なところ、私はもう疲れ果ててしまいましたが、この計算をFiveで再現する方法はまだ理解していません。

//--- counted in the 1-st buffer
   for(i=0;i<limit;i++)
     {
      int bars=iBarShift(Symbol(),PERIOD_M1,iTime(Symbol(),PERIOD_CURRENT,i),false);
      ExtBuffer[i]=(
                    iMA(NULL,PERIOD_CURRENT,1,0,MODE_SMA,PRICE_HIGH,i)
                    +iMA(NULL,PERIOD_M1,1,1,MODE_SMA,PRICE_OPEN,bars)
                    );
      Print(bars);
     }
 
cripple:

正直、苦労しましたが、この計算をFiveで再現する方法はまだ理解できていません。

ユニバーサルコードを提案した

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

MQL4初心者の質問、ヘルプ、アルゴリズムやコードに関するディスカッションなど何でもOK

アレクセイ・ビクトロフ さん 2017.06.02 14:27

トライ

int  Bars(
   string           symbol_name,     // имя символа
   ENUM_TIMEFRAMES  timeframe,       // период
   datetime         start_time,      // с какой даты
   datetime         stop_time        // по какую дату
   );

i 番目の小節を計時し、i の代わりに結果の小節番号を入れる。


mql4とmql5の両方で動作します。

Bars - Доступ к таймсериям и индикаторам - Справочник MQL4
Bars - Доступ к таймсериям и индикаторам - Справочник MQL4
  • docs.mql4.com
Bars - Доступ к таймсериям и индикаторам - Справочник MQL4
 
Alexey Viktorov:

私はすぐにユニバーサルコードを提案しました


mql4とmql5で動作します。

しかし、どのように5で取得する

start_time,      // с какой даты

その場

iTime()

が動作しない。

 
cripple:

でも、どうやったらAに入れるのか

これ

が動作しない。

CopyTimeは 動作します。

しかし、この場合、現在の時刻はtime[i]にあり、これはインジケータなので必要ない...。

iTime(Symbol(),PERIOD_CURRENT,i) == time[i]
CopyTime - Доступ к таймсериям и индикаторам - Справочник MQL4
CopyTime - Доступ к таймсериям и индикаторам - Справочник MQL4
  • docs.mql4.com
CopyTime - Доступ к таймсериям и индикаторам - Справочник MQL4
 

皆さん、こんにちは。OrderProfit()関数について教えてください。Commentにすべてのオープンオーダーの現在の利益を表示させる方法。同じ数字が出るんです。

double CalcProfit()

{

ダブル プロフィット = 0;

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

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))

{

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

{

if (OrderType() == OP_BUY)

{

利益 += (OrderProfit()+OrderSwap()+OrderCommission())です。

}

}

}

}

リターン(プロフィット)。

}

 
ティック(価格変動)ごとに利益の値を適宜変化させる方法。
 
AlGuru:

皆さん、こんにちは。OrderProfit()関数について教えてください。Commentにすべてのオープンオーダーの現在の利益を表示させる方法。同じ数字が出るんです。

double CalcProfit()

{

ダブル プロフィット = 0;

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

{

if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))

{

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

{

if (OrderType() == OP_BUY)

{

利益 += (OrderProfit()+OrderSwap()+OrderCommission())です。

}

}

}

}

リターン(プロフィット)。

}


それだけです。了解です。
 
cripple:

でも、どうやって5円玉を入れるのか

これ

は機能しない。

からして

https://www.mql5.com/ru/articles/81

私自身は、まず4-Rockで書いて、それから5-Rockに変更します。そうしないと、5-Rockのコードは読みにくいし、関数は文字数が長すぎるし・・・と面倒なので、エンジニア向けではなく、歯学者向けの文章になっています )))) 。

見てくれ

https://www.mql5.com/ru/search#!keyword=f%20mql4%20to%20mql5

Переход с MQL4 на MQL5
Переход с MQL4 на MQL5
  • 2010.05.11
  • Sergey Pavlov
  • www.mql5.com
Данная статья, построенная в форме справочника по функциям MQL4, призвана помочь переходу с MQL4 на MQL5. Для каждой функции языка MQL4 приведено описание и представлен способ ее реализации на MQL5, что позволит вам значительно ускорить перевод своих программ с MQL4 на MQL5. Для удобства функции разбиты на группы, как в документации по MQL4.