アスク! - ページ 45

 
majlisb:
HI、プロフェッショナル

例えば、EAでシグナルが発生し、シグナルバーの高さで買い/売り注文を出したい場合。

我々は、信号のバーの高さを見つけるために開いて新しいバーまで待機する必要があります、どのように我々はこれを行うことができますか?(どんな記事でも、ポストでも、EAでも、、、)

ありがとうございます

あなたは今、信号の3barsをカウントする場合は、4bars 単純にはい?Codersguruはmql4のサイトで別の方法についての素晴らしい記事を持っています。

 

質問があります。

MTではできない追加のプログラミングが必要かもしれません。 よくわかりません。 基本的に、私はAlpariのデータを使ってMTでバックテストとフォワードテストの両方がうまくいくEAを持っています。 他のブローカーのデータフィードでは、しばしばトレードの間に不一致があります。 アルパリでトレードを開始しても、別のブローカーでは開始されないことがありますし、その逆もあります。 アルパリのプラットフォームで取引が成立した後、私のブローカーのプラットフォームで取引が成立 するようなスクリプトを書くことは可能でしょうか?

例えば、Alpariで1.9450で2ロットのケーブルを買うシグナルが出たとします。 その取引は実行されました。 同じ注文が一瞬後に私のライブブローカーのプラットフォームで入力されます。 Alpariでストップまたはt/pレベルにヒットして取引が終了すると、その同じ取引が私のライブブローカーのプラットフォームで終了します。

これはスキャルピング・システムではないので、2つの価格に2ピップのずれがあっても、大したことではありません。 どなたか、これが可能かどうか、可能であれば、どのようにすればよいかをご存知でしょうか? よろしくお願いします。

 

MTF xpMAに関するヘルプ

Codersguruです。

xpMAのMTFの機能を確認していただけますか?

ありがとうございます。

Pippt

で投稿番号364をご覧ください。

https://www.mql5.com/en/forum/173574

 

簡単な質問なのですが、よくわからないのです。

例えば、0.69の値を0.70にしたい場合、あるいは0.63の値を0.60にしたい場合。

mathceiling()やmathfloor()ではうまくいきません。

 

初心者の質問

皆さん、こんにちは。

CodersGuruと彼の素晴らしいコースのおかげで、私はMQL4について学ぼうとしています。

MQL3で書いたインジケータを変換することで、MQL4を学ぼうとしています。

以下のコードで何が間違っているのか、どなたか教えてください。

問題は2つのIf文にあります...78行目、79行目

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

//| First_Indicator.mq4|||Codersguru

//| Codersguru

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

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

#プロパティ コピーライト "Codersguru"

#property リンク "https://www.forex-tsd.com"

#property indicator_chart_window(インジケーターチャートウィンドウ

#property indicator_buffers 8

#property indicator_color1 レッド

//---- バッファ

double ExtMapBuffer1[];

//----------------- 変数宣言 ----------------------+.

int pos=0;

double Pivot_Point = 0;

double new_Pivot_Point =0; double prev_Pivot_Point =0; double new_Pivot_Point =0;

double prev_Pivot_Point=0;

double Pivot_Factor=0;

double LastClose=0。

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

//| カスタムインジケータ初期化関数

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

int init()

{

//---- インジケータ

SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,1) を設定します。

SetIndexBuffer(0,ExtMapBuffer1);

文字列short_name = "Pivot Line";

IndicatorShortName(short_name)。

return(1);

}

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

//| カストルインディケーター初期化関数

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

int deinit()

{

return(0);

}

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

//| カスタムインジケータイテレーション関数

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

int start()

{

int counted_bars=IndicatorCounted();

//エラーの可能性をチェック

if (counted_bars<0) return(-1);

//---- 最後にカウントされたバーが再カウントされる

if (counted_bars>0) counted_bars--;

int cnt=Bars-counted_bars;

//---- メイン計算ループ

while(cnt >= 0)

{

LastClose = Close[cnt];

If(LastClose>Pivot_Point)//78行目

If(new_Pivot_Point > prev_Pivot_Point) //Line 79

{

prev_Pivot_Point = new_Pivot_Point;

Pivot_Point = new_Pivot_Point。

}

ExtMapBuffer1[cnt]= Pivot_Point ;

cnt--;

}

return(0);

}

以上が、コンパイラのメッセージです。

---------------------------------------------------------------

'If' - 関数が定義されていません ......(78,10)

もし' - セミコロンが必要です ......(79,13)

'If' - 関数が定義されていません ...(79, 13)

'{' - セミコロンが必要です ......(80, 13)

----------------------------------------------------------------

何をやっても、何が問題なのか思いつかないようです・・・。とても簡単なことだとわかっているのですが、なかなかうまくいきません...。

この基本的な質問にご協力いただける皆様、ありがとうございます...。

チーフ

P.S. すべての人に、幸せで、健康で、豊かな新年を

 

MQLは大文字と小文字を区別します。"If "ではなく、"if "を使用してください。

 

WOW... それは早かった....

このような、"痒いところに手が届く "ような対応をしていただき、本当にありがとうございます。

あなたの回答はとても感謝しています...良いお年を...

チーフ

 

数学ラウンド

BluePearl:
mqlのどのような数学関数が2倍値を丸めるのに使われているのでしょうか?

例えば、値が0.69で結果を0.70にしたい場合、あるいは値が0.63で結果を0.60にしたい場合などだ。

mathceiling()やmathfloor()ではうまくいきません。

MathFloor(x+0.5)」と同じように、値を最も近い整数に丸める「MathRound(double x)」がありますね。小数点以下の丸めは、"MathRound(x*10)/10 "のように小数点のシフト/アンシフト式を使用することができます。

 

付属の矢印を追加して、十字架の上下を表示するにはどうしたらいいですか?

ファイル:
mtf_cross.mq4  5 kb
 

ヒストグラム

さて、MQL3からMQL4への変換方法を学び続けている中で、またまた質問です...。

チャートの上下の2本の線の間にある部分を塗りたいのですが、どのようにすればよいのでしょうか?画面部分を塗る関数があるのかないのかわからないので、SetIndexStyle()文の中の「Draw_Histogram」を使ってみようと思いました。しかし、その仕組みがよくわかりません。使っても何も起こりません。

ex:

SetIndexStyle(7,DRAW_HISTOGRAM,0,1);

ExtMapBuffer8[cnt]=(Pivot_Point-(Short_Line*Point));

Print("Cnt = ",cnt," Histo = ",ExtMapBuffer8[cnt]," Calc = ",(Pivot_Point+(Short_Line*Point)));

ジャーナルの出力では、適切なcnt、適切なcalcが生成されますが、Histoの値がゼロになっています。

MACDインジケータのコードを調べても無駄で、Heiken-Ashiインジケータのコードも調べたのですが、どのように動作するのか理解できていません。Heiken-Ashiインジケータは、各ロー ソク足を作成 するために4つのバッファを使用しているように見えますが、私はそれを確信することはできません。

MACDは、ゼロの基準線を使用して、そこからヒストグラム・バーが描かれるようですが、基準線があるのでしょうか?もしそうなら、どのように設定するのでしょうか?

この関数がどのように機能するのか、どなたか説明していただけないでしょうか。もし、指定した画面部分を塗るような機能があれば、それについても情報をお願いします。

皆さん、よろしくお願いします。

よろしくお願いします。

チーフ