コーディングの方法は? - ページ 64 1...575859606162636465666768697071...347 新しいコメント manu29 2008.01.19 12:36 #631 ご回答ありがとうございました。引数の問題ではなく、ループ内の計算が正しいです。問題は、関数 内のループの外でのiMAonArrayの2回目の呼び出しにあると思います。 ご指摘の件 fxbs 2008.01.19 13:16 #632 MaxBarsToCount(History)を制限に追加する最適な方法 MaxBarsToCount (History)を制限する場合、Correctionなどを追加する必要がある場合があります。 一番安全で簡単で普遍的な方法はないでしょうか? ---------------------- 例えば、light fisher 4 stoch smothing があります。 ---------- int start() { int counted_bars=IndicatorCounted(); //エラーの可能性をチェック する if(counted_bars<0) return(-1); int limit=Bars-counted_bars; if(limit>maxbars)limit=maxbars; if (limit>Bars-lenth-1)limit=Bars-lenth-1。 //---- for (int shift = limit; shift>=0;shift--) { AuxBuffer[shift]=(iStochastic(NULL,0,lenth,2,1,MODE_SMA,0,MODE_MAIN,shift)/100-0.5)とする。 +0.5*AuxBuffer[shift+1]; FishBuffer[shift]= 0.25* MathLog((1+AuxBuffer[shift])/(1-AuxBuffer[shift]))+FishBuffer[shift]= 0.25* MathLog((1+AuxBuffer[shift])/(1-AuxBuffer[shift])) 0.5*FishBuffer[shift+1]; SignalBuffer[shift]=FishBuffer[shift+1]とする。 } //---- return(0); } ------------------------ フィッシャーリミットf-laの場合。 int limit; int counted_bars=IndicatorCounted(); if(counted_bars>0) counted_bars--; limit=Bars-counted_bars; for(int i=limit; i>=0; i--) { .... for Stoch: int start() { int i,k; int counted_bars=IndicatorCounted(); 二重価格。 //---- if(Bars<=draw_begin2) return(0); //---- 初期値ゼロ if(counted_bars<1) { for(i=1;i<=draw_begin1;i++) MainBuffer=0; for(i=1;i<=draw_begin2;i++) SignalBuffer=0; } //---- 最小値のカウント i=Bars-KPeriod; if(counted_bars>KPeriod) i=Bars-counted_bars-1.If(counted_bars>KPeriod)とする。 while(i>=0) { double min=1000000; k=i+KPeriod-1; while(k>=i) { price=Low[k]; if(min>price) min=price; k--; } LowesBuffer=min; i--; } .... p.s. 添付のインジケータは、クリーンなフィッシャー変換とストークをベースにしていますが、MaxBarsを少し修正する必要があります...(MaxBarsがアウトの場合は問題ありません) ファイル: trans_stoch_smz_limitmaxbars_test.mq4 3 kb How to code? Best way to add Indicators with alerts/signal dvarrin 2008.01.19 14:58 #633 こんにちは。 皆さん、どうもありがとうございます。現在、正常に動作しており、1バーにつき1つの注文しかオープンしていません。このようなEAで良いのは、バックテストに「Open price only」オプションを使えることで、「per tick」よりも高速になります。 omelette 2008.01.19 18:37 #634 Michel: Omeletteさん、BTは、履歴を見るのに、問題があるのをご存知でしょうか?数ヶ月前にこのバグについてMetaquoteに問い合わせたのですが、何も答えてくれませんでした...。多分、今は直っているのでしょうが・・・。 Michelさん、ご指摘ありがとうございます。わー、知らなかったー、これは大きなバグと評価します! これを確認 するために(MT 208で)、OrdersHistoryTotal()の情報を使って、マーチンゲーラーでトレードの方向を決め、別のバージョンで「従来の手段」を使いました - 両者のエクイティカーブは「同じ」であるべきです。これは私が見つけたものです...。 最新のメタトレーダーで確認したところ、このバグはまだ残っていました。 ファイル: notusinghistorytotal_testergraph.gif 7 kb usinghistorytotal_testergraph.gif 8 kb arsenic786 2008.01.19 19:04 #635 MQLコードが必要です こんにちは。 EAに統合するためのコードが必要です。 1) PM2:00からPM5:00の間、いかなるポジションもオープンしてはいけないという制限をEAに加える必要があります。この簡単なコードと、EAのどこにそれを置くことができるかを教えてください。 2) ブローカーによるSL狩りのために、ポジションを開くためにEAにSLを入れたくありません。そこで、EAに「オープンしたポジションの利益の合計が+20ポイントなら、ポジションを閉じる」というチェックを 入れる必要があるのです。 いつも応援してくださるサポーターの皆様、本当にありがとうございます。 よろしくお願いします。 Kashif. omelette 2008.01.21 16:07 #636 oilfxpro:......EAはスワップ現在レートとスワップ過去レートを見ることができますか? OILFXPRO 残念ながら、そうではありません。 PS - 私の回答は誤解を招くようです。 過去のスワップ金利を取得できないという意味です - 現在の金利を取得することは問題ありません.... derumuro 2008.01.22 12:01 #637 複数の注文を一度に処理する こんにちは。 Expert Advisorで次のようなプログラムを作りたいのですが。 私は、同時に複数の注文(3-6注文)を開きたいと思います。 1.オーダー:ボリューム、T/P、S/L、T/S . . . 5.オーダーボリューム、T/P、S/L、T/S 私を助けることができる? ありがとうございます。 デルムーロ agarwalsharma 2008.01.22 17:15 #638 学びたいことがあるんです。 皆さん、こんにちは。 私は次のような簡単なコードのためのプログラミングのヘルプを必要とします。 市場価格 > デルタピップスによってMAの値は、買いを開く場合。 市場価格<デルタpipsによってMAの値は、売りを開く場合。 TP SLとTSで。誰か専門家のプログラマーがコードの書き方を教えてくれませんか? ありがとうございます。 Beno 2008.01.22 21:07 #639 このコードを変更して、3つのインジケータが上昇トレンド(青)または下降トレンド(赤)のどちらかに同期したときのみ注文が出されるようにするにはどうすればよいのでしょうか。 私は古いEAをテンプレートとして使用し、正しいシグナルを作成するために指標を追加しようとしました。 このEAとここ数日のパフォーマンスを添付しておきます。 IMO どなたか正しい方向を示していただけませんか? 乾杯 Beno ファイル: the_abyss.mq4 11 kb the_abyss.gif 51 kb detailedstatement_2.htm 20 kb detailedstatement_6.gif 6 kb wolfe 2008.01.23 01:25 #640 このインクルード関数を、ループで「詰まる」可能性がないようにコード化する方法はありますか? int CBM(int intMagic)//CloseByMagic { int intOffset=0; while(OTBM(intMagic)>0) { OrderSelect(intOffset,SELECT_BY_POS); if(OrderMagicNumber()==intMagic) { if(OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),999,Red); if(OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),999,Orange); } else { intOffset++; } } return(0); } 助けてくれる人に感謝します。 1...575859606162636465666768697071...347 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ご回答ありがとうございました。引数の問題ではなく、ループ内の計算が正しいです。問題は、関数 内のループの外でのiMAonArrayの2回目の呼び出しにあると思います。
ご指摘の件
MaxBarsToCount(History)を制限に追加する最適な方法
MaxBarsToCount (History)を制限する場合、Correctionなどを追加する必要がある場合があります。
一番安全で簡単で普遍的な方法はないでしょうか?
----------------------
例えば、light fisher 4 stoch smothing があります。
----------
int start()
{
int counted_bars=IndicatorCounted();
//エラーの可能性をチェック する
if(counted_bars<0) return(-1);
int limit=Bars-counted_bars;
if(limit>maxbars)limit=maxbars;
if (limit>Bars-lenth-1)limit=Bars-lenth-1。
//----
for (int shift = limit; shift>=0;shift--)
{
AuxBuffer[shift]=(iStochastic(NULL,0,lenth,2,1,MODE_SMA,0,MODE_MAIN,shift)/100-0.5)とする。
+0.5*AuxBuffer[shift+1];
FishBuffer[shift]= 0.25* MathLog((1+AuxBuffer[shift])/(1-AuxBuffer[shift]))+FishBuffer[shift]= 0.25* MathLog((1+AuxBuffer[shift])/(1-AuxBuffer[shift]))
0.5*FishBuffer[shift+1];
SignalBuffer[shift]=FishBuffer[shift+1]とする。
}
//----
return(0);
}
------------------------
フィッシャーリミットf-laの場合。
int limit;
int counted_bars=IndicatorCounted();
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
for(int i=limit; i>=0; i--)
{
....
for Stoch:
int start()
{
int i,k;
int counted_bars=IndicatorCounted();
二重価格。
//----
if(Bars<=draw_begin2) return(0);
//---- 初期値ゼロ
if(counted_bars<1)
{
for(i=1;i<=draw_begin1;i++) MainBuffer=0;
for(i=1;i<=draw_begin2;i++) SignalBuffer=0;
}
//---- 最小値のカウント
i=Bars-KPeriod;
if(counted_bars>KPeriod) i=Bars-counted_bars-1.If(counted_bars>KPeriod)とする。
while(i>=0)
{
double min=1000000;
k=i+KPeriod-1;
while(k>=i)
{
price=Low[k];
if(min>price) min=price;
k--;
}
LowesBuffer=min;
i--;
}
....
p.s. 添付のインジケータは、クリーンなフィッシャー変換とストークをベースにしていますが、MaxBarsを少し修正する必要があります...(MaxBarsがアウトの場合は問題ありません)
こんにちは。
皆さん、どうもありがとうございます。現在、正常に動作しており、1バーにつき1つの注文しかオープンしていません。このようなEAで良いのは、バックテストに「Open price only」オプションを使えることで、「per tick」よりも高速になります。
Omeletteさん、BTは、履歴を見るのに、問題があるのをご存知でしょうか?数ヶ月前にこのバグについてMetaquoteに問い合わせたのですが、何も答えてくれませんでした...。多分、今は直っているのでしょうが・・・。
Michelさん、ご指摘ありがとうございます。わー、知らなかったー、これは大きなバグと評価します!
これを確認 するために(MT 208で)、OrdersHistoryTotal()の情報を使って、マーチンゲーラーでトレードの方向を決め、別のバージョンで「従来の手段」を使いました - 両者のエクイティカーブは「同じ」であるべきです。これは私が見つけたものです...。![](https://c.mql5.com/forextsd/smiles/angry_smile.png)
最新のメタトレーダーで確認したところ、このバグはまだ残っていました。
MQLコードが必要です
こんにちは。
EAに統合するためのコードが必要です。
1) PM2:00からPM5:00の間、いかなるポジションもオープンしてはいけないという制限をEAに加える必要があります。この簡単なコードと、EAのどこにそれを置くことができるかを教えてください。
2) ブローカーによるSL狩りのために、ポジションを開くためにEAにSLを入れたくありません。そこで、EAに「オープンしたポジションの利益の合計が+20ポイントなら、ポジションを閉じる」というチェックを 入れる必要があるのです。
いつも応援してくださるサポーターの皆様、本当にありがとうございます。
よろしくお願いします。
Kashif.
......EAはスワップ現在レートとスワップ過去レートを見ることができますか? OILFXPRO
残念ながら、そうではありません。
PS - 私の回答は誤解を招くようです。 過去のスワップ金利を取得できないという意味です - 現在の金利を取得することは問題ありません....
複数の注文を一度に処理する
こんにちは。
Expert Advisorで次のようなプログラムを作りたいのですが。
私は、同時に複数の注文(3-6注文)を開きたいと思います。
1.オーダー:ボリューム、T/P、S/L、T/S
.
.
.
5.オーダーボリューム、T/P、S/L、T/S
私を助けることができる?
ありがとうございます。
デルムーロ
学びたいことがあるんです。
皆さん、こんにちは。
私は次のような簡単なコードのためのプログラミングのヘルプを必要とします。
市場価格 > デルタピップスによってMAの値は、買いを開く場合。
市場価格<デルタpipsによってMAの値は、売りを開く場合。
TP SLとTSで。誰か専門家のプログラマーがコードの書き方を教えてくれませんか?
ありがとうございます。
このコードを変更して、3つのインジケータが上昇トレンド(青)または下降トレンド(赤)のどちらかに同期したときのみ注文が出されるようにするにはどうすればよいのでしょうか。
私は古いEAをテンプレートとして使用し、正しいシグナルを作成するために指標を追加しようとしました。
このEAとここ数日のパフォーマンスを添付しておきます。 IMO
どなたか正しい方向を示していただけませんか?
乾杯
Beno
このインクルード関数を、ループで「詰まる」可能性がないようにコード化する方法はありますか?
{
int intOffset=0;
while(OTBM(intMagic)>0)
{
OrderSelect(intOffset,SELECT_BY_POS);
if(OrderMagicNumber()==intMagic)
{
if(OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),999,Red);
if(OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),999,Orange);
}
else {
intOffset++;
}
}
return(0);
}助けてくれる人に感謝します。