コーディングの方法は? - ページ 300 1...293294295296297298299300301302303304305306307...347 新しいコメント 削除済み 2012.07.12 04:31 #2991 オーバートレードの防止 皆さん、こんにちは。 H4チャートでMACDクロスを使った全ティック方式でEAをテストしたところ、最初の数分間で約200のポジションをオープンしてしまいました。 PRICE_CLOSE...)を使い、MACDMainCurrentとMACDSymbolCurrentは0、MACDMainPreviousとMACDSymbolPreviousは1としてオフセットしています。 私のグローバル変数は string hasOrderedGV = "has_ordered_GV"; 文字列 barsGV = "bars_GV"; そして、私はこのコードをEAがロングまたはショートのポジションをチェックする前に挿入しています。 //--- H4時間足ですでに注文が入っているかどうかを判断します。 if ((GlobalVariableGet (barsGV) == 0)|| (GlobalVariableGet (barsGV) < Bars)) { GlobalVariableSet(hasOrderedGV,false)。 GlobalVariableSet(barsGV,Bars); //--- ロングポジション(BUY)の可能性を確認する。 if (GlobalVariableGet (hasOrderedGV, false)) { if ...(ここで私は実際に他の指標の間でMACDのクロスをチェックします)。 その後、注文が正常に開いた場合。 if (Ticket > 0) { GlobalVariableSet(hasOrderedGV,true); { if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) OrderModify(OrderTicket(), OrderOpenPrice(), OrderStopLoss(), GetTPPriceShort(SLPriceShort, RiskRewardRatio), OrderExpiration(), Green).を実行します。 などなど。 どなたか、私のやり方が正しいかどうか教えていただけませんか?私はそれを行うには、より効率的または正確な方法があったかもしれないかどうかは分かりませんでした?ありがとうございます。 How to code? コーディングのヘルプ オジャラEA Mladen Rakic 2012.07.12 04:58 #2992 ... EAがすでに開いている注文の数をカウントし、すでに注文を開いている場合は、新しい注文を開かないようにすればよいのではないでしょうか? 単なるアイデアです(そして、EAが開く注文の数を 制限する通常の最も簡単な方法です)。 crsnape@btinternet.com: 皆さん、こんにちは。H4チャートでMACDクロスを使った全ティック方式でEAをテストしたところ、最初の数分間で約200のポジションをオープンしてしまいました。PRICE_CLOSE...)を使い、MACDMainCurrentとMACDSymbolCurrentは0、MACDMainPreviousとMACDSymbolPreviousは1としてオフセットしています。 私のグローバル変数は string hasOrderedGV = "has_ordered_GV"; 文字列 barsGV = "bars_GV"; そして、私はこのコードをEAがロングまたはショートのポジションをチェックする前に挿入しています。 //--- H4時間足ですでに注文が入っているかどうかを判断します。 if ((GlobalVariableGet (barsGV) == 0)|| (GlobalVariableGet (barsGV) < Bars)) { GlobalVariableSet(hasOrderedGV,false)。 GlobalVariableSet(barsGV,Bars); //--- ロングポジション(BUY)の可能性を確認する。 if (GlobalVariableGet (hasOrderedGV, false)) { if ...(ここで私は実際に他の指標の間でMACDのクロスをチェックします)。 その後、注文が正常に開いた場合。 if (Ticket > 0) { GlobalVariableSet(hasOrderedGV,true); { if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) OrderModify(OrderTicket(), OrderOpenPrice(), OrderStopLoss(), GetTPPriceShort(SLPriceShort, RiskRewardRatio), OrderExpiration(), Green).を実行。 などなど。 どなたか、私のやり方が正しいかどうか教えていただけませんか?もっと効率的で正確な方法があるのではと思ったのですが、どうでしょうか?ありがとうございます。 削除済み 2012.07.12 10:33 #2993 私のEAは通常、一度に複数のポジションを開いているので、次のような使い方はできません。 もし (CountedOrders > 5) を使うことはできません。 というのは、ある時点でいくつのポジションが開いているか分からないからです。私はそれを時間に関連付ける必要があると思います。 dipu 2012.07.13 12:00 #2994 このEAを5桁のmt4口座にアタッチしています。しかし、それはどんな取引も開くことはありません.... plsは私を助ける ファイル: dipu_2.mq4 5 kb Akintunde Akintinoye 2012.07.14 01:36 #2995 Pls I need to edit dis ea to move stoploss in 3 steps. このEAにはすでにブレークイーブンの機能がありますが、このEAに私の ストップロスを最初のブレークイーブンポイントからさらに+20pipsに移動させたいのです。 27pipsになったら+20pipsに、+50pipsになったら+40pipsに、そして可能ならそれ以上に さらに可能であれば ファイル: luktom_manager_2.mq4 16 kb tkuan77 2012.07.15 04:53 #2996 Mladenさん、こんにちは。 ご指摘ありがとうございます。もうなんとか解決しました。 ところで、iStochasticdoの MODEとSHIFTの機能を ご存知でしょうか、あるいはもっと詳しい情報を提供しているところはないでしょうか。mql4のホームページのドキュメントを読んでいるのですが、いまいちピンと来ません。説明が簡潔すぎるのです。 例えば iStochastic(NULL, 0, 3, 3, 3, MODE_SMMA, 0, MODE_SIGNAL, Current + 0); iStochastic(NULL, 0, 5, 3, 3, MODE_SMMA, 0, MODE_MAIN, 0); iStochastic(NULL, 0, 5, 3, 3, MODE_SMMA, 0, MODE_SIGNAL,Current + 1); current + 0 などはどうするのでしょうか? ありがとうございます。 テランス mladen: Terrance それは関数です。この関数を EA の末尾に配置し、現在のバーで注文がすでに開かれているかどうかをチェックするために、適切と思われる場所に呼び出しを配置します。 削除済み 2012.07.15 06:39 #2997 こんにちは、どなたか私がどこで間違っているのか教えていただけませんか?エラーコード''赤でハイライトされた行の間違ったパラメータのカウントを取得します - しかし、すべてのパラメータが追加されます... if ((GlobalVariableGet (barsGV) == 0)|| (GlobalVariableGet (barsGV) < Bars)) { GlobalVariableSet(hasOrderedGV,false); GlobalVariableSet(barsGV,Bars); //--- ロングポジション(BUY)の可能性を確認する。 if (GlobalVariableGet (hasOrderedGV, false)) Thanks Mladen Rakic 2012.07.15 07:04 #2998 ... テランス MODE_MAINは、ストキャスティックラインの 値を読み込むという意味です。MODE_SIGNALは、ストキャスティクスのシグナル線の値を読み込むという意味です。 SHIFTについては、どのインディケータでも(カスタムでも)同じです。例えば、SHIFT=0は現在のバーの値、SHIFT=1は最初に閉じたバーの値、といった具合に。 tkuan77: Mladenさん、こんにちは。 ご指摘ありがとうございます。もう解決しました。ところで、iStochasticdoの MODEとSHIFTの機能をご存知でしょうか、あるいはもっと詳しい情報を提供しているところはないでしょうか。mql4のホームページのドキュメントを読んでいるのですが、いまいちピンと来ません。説明が簡潔すぎるのです。例えばiStochastic(NULL, 0, 3, 3, 3, MODE_SMMA, 0, MODE_SIGNAL, Current + 0);iStochastic(NULL, 0, 5, 3, 3, MODE_SMMA, 0, MODE_MAIN, 0);iStochastic(NULL, 0, 5, 3, 3, MODE_SMMA, 0, MODE_SIGNAL,Current + 1);current + 0 などはどうするのでしょうか?よろしくお願いします。 テランス Mladen Rakic 2012.07.15 07:06 #2999 ... エラーは、GlobalVariableGet() が1つのパラメータ(変数名)しか持っていないことです。2番目のパラメータは必要ありません(関数の 呼び出しで持っている"false") crsnape@btinternet.com: こんにちは、私はここで間違っている場所お願いし、誰かが私を伝えることができるでしょうか?私はエラーコード''間違ったパラメータは、赤で強調表示された行にカウントされます - しかし、すべてのパラメータが追加されます...if ((GlobalVariableGet (barsGV) == 0)|| (GlobalVariableGet (barsGV) < Bars)) { GlobalVariableSet(hasOrderedGV,false); GlobalVariableSet(barsGV,Bars); //--- ロングポジション(BUY)の可能性を確認する if (GlobalVariableGet (hasOrderedGV, false)) Thanks 削除済み 2012.07.15 07:11 #3000 このコードに変更したら、少なくともエラーはなくなりました。 if (GlobalVariableGet (hasOrderedGV) == false) 1...293294295296297298299300301302303304305306307...347 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
オーバートレードの防止
皆さん、こんにちは。
H4チャートでMACDクロスを使った全ティック方式でEAをテストしたところ、最初の数分間で約200のポジションをオープンしてしまいました。 PRICE_CLOSE...)を使い、MACDMainCurrentとMACDSymbolCurrentは0、MACDMainPreviousとMACDSymbolPreviousは1としてオフセットしています。
私のグローバル変数は
string hasOrderedGV = "has_ordered_GV";
文字列 barsGV = "bars_GV";
そして、私はこのコードをEAがロングまたはショートのポジションをチェックする前に挿入しています。
//--- H4時間足ですでに注文が入っているかどうかを判断します。
if ((GlobalVariableGet (barsGV) == 0)|| (GlobalVariableGet (barsGV) < Bars))
{
GlobalVariableSet(hasOrderedGV,false)。
GlobalVariableSet(barsGV,Bars);
//--- ロングポジション(BUY)の可能性を確認する。
if (GlobalVariableGet (hasOrderedGV, false))
{
if ...(ここで私は実際に他の指標の間でMACDのクロスをチェックします)。
その後、注文が正常に開いた場合。
if (Ticket > 0)
{
GlobalVariableSet(hasOrderedGV,true);
{
if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES))
OrderModify(OrderTicket(), OrderOpenPrice(), OrderStopLoss(), GetTPPriceShort(SLPriceShort, RiskRewardRatio), OrderExpiration(), Green).を実行します。
などなど。
どなたか、私のやり方が正しいかどうか教えていただけませんか?私はそれを行うには、より効率的または正確な方法があったかもしれないかどうかは分かりませんでした?ありがとうございます。
...
EAがすでに開いている注文の数をカウントし、すでに注文を開いている場合は、新しい注文を開かないようにすればよいのではないでしょうか?
単なるアイデアです(そして、EAが開く注文の数を 制限する通常の最も簡単な方法です)。
皆さん、こんにちは。
H4チャートでMACDクロスを使った全ティック方式でEAをテストしたところ、最初の数分間で約200のポジションをオープンしてしまいました。PRICE_CLOSE...)を使い、MACDMainCurrentとMACDSymbolCurrentは0、MACDMainPreviousとMACDSymbolPreviousは1としてオフセットしています。
私のグローバル変数は
string hasOrderedGV = "has_ordered_GV";
文字列 barsGV = "bars_GV";
そして、私はこのコードをEAがロングまたはショートのポジションをチェックする前に挿入しています。
//--- H4時間足ですでに注文が入っているかどうかを判断します。
if ((GlobalVariableGet (barsGV) == 0)|| (GlobalVariableGet (barsGV) < Bars))
{
GlobalVariableSet(hasOrderedGV,false)。
GlobalVariableSet(barsGV,Bars);
//--- ロングポジション(BUY)の可能性を確認する。
if (GlobalVariableGet (hasOrderedGV, false))
{
if ...(ここで私は実際に他の指標の間でMACDのクロスをチェックします)。
その後、注文が正常に開いた場合。
if (Ticket > 0)
{
GlobalVariableSet(hasOrderedGV,true);
{
if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES))
OrderModify(OrderTicket(), OrderOpenPrice(), OrderStopLoss(), GetTPPriceShort(SLPriceShort, RiskRewardRatio), OrderExpiration(), Green).を実行。
などなど。
どなたか、私のやり方が正しいかどうか教えていただけませんか?もっと効率的で正確な方法があるのではと思ったのですが、どうでしょうか?ありがとうございます。私のEAは通常、一度に複数のポジションを開いているので、次のような使い方はできません。
もし (CountedOrders > 5)
を使うことはできません。
というのは、ある時点でいくつのポジションが開いているか分からないからです。私はそれを時間に関連付ける必要があると思います。
このEAを5桁のmt4口座にアタッチしています。しかし、それはどんな取引も開くことはありません....![](https://c.mql5.com/forextsd/smiles/cry_smile.png)
plsは私を助ける
Pls I need to edit dis ea to move stoploss in 3 steps.
このEAにはすでにブレークイーブンの機能がありますが、このEAに私の
ストップロスを最初のブレークイーブンポイントからさらに+20pipsに移動させたいのです。
27pipsになったら+20pipsに、+50pipsになったら+40pipsに、そして可能ならそれ以上に
さらに可能であれば
Mladenさん、こんにちは。
ご指摘ありがとうございます。もうなんとか解決しました。![](https://c.mql5.com/forextsd/smiles/smile.png)
ところで、iStochasticdoの MODEとSHIFTの機能を ご存知でしょうか、あるいはもっと詳しい情報を提供しているところはないでしょうか。mql4のホームページのドキュメントを読んでいるのですが、いまいちピンと来ません。説明が簡潔すぎるのです。![](https://c.mql5.com/forextsd/smiles/frown.png)
例えば
iStochastic(NULL, 0, 3, 3, 3, MODE_SMMA, 0, MODE_SIGNAL, Current + 0);
iStochastic(NULL, 0, 5, 3, 3, MODE_SMMA, 0, MODE_MAIN, 0);
iStochastic(NULL, 0, 5, 3, 3, MODE_SMMA, 0, MODE_SIGNAL,Current + 1);
current + 0 などはどうするのでしょうか?
ありがとうございます。
テランス
Terrance それは関数です。この関数を EA の末尾に配置し、現在のバーで注文がすでに開かれているかどうかをチェックするために、適切と思われる場所に呼び出しを配置します。
こんにちは、どなたか私がどこで間違っているのか教えていただけませんか?エラーコード''赤でハイライトされた行の間違ったパラメータのカウントを取得します - しかし、すべてのパラメータが追加されます...
if ((GlobalVariableGet (barsGV) == 0)|| (GlobalVariableGet (barsGV) < Bars))
{
GlobalVariableSet(hasOrderedGV,false);
GlobalVariableSet(barsGV,Bars);
//--- ロングポジション(BUY)の可能性を確認する。
if (GlobalVariableGet (hasOrderedGV, false)) Thanks
...
テランス
MODE_MAINは、ストキャスティックラインの 値を読み込むという意味です。MODE_SIGNALは、ストキャスティクスのシグナル線の値を読み込むという意味です。
SHIFTについては、どのインディケータでも(カスタムでも)同じです。例えば、SHIFT=0は現在のバーの値、SHIFT=1は最初に閉じたバーの値、といった具合に。
Mladenさん、こんにちは。
ご指摘ありがとうございます。もう解決しました。![](https://c.mql5.com/forextsd/smiles/smile.png)
ところで、iStochasticdoの MODEとSHIFTの機能をご存知でしょうか、あるいはもっと詳しい情報を提供しているところはないでしょうか。mql4のホームページのドキュメントを読んでいるのですが、いまいちピンと来ません。説明が簡潔すぎるのです。![](https://c.mql5.com/forextsd/smiles/frown.png)
例えば
iStochastic(NULL, 0, 3, 3, 3, MODE_SMMA, 0, MODE_SIGNAL, Current + 0);
iStochastic(NULL, 0, 5, 3, 3, MODE_SMMA, 0, MODE_MAIN, 0);
iStochastic(NULL, 0, 5, 3, 3, MODE_SMMA, 0, MODE_SIGNAL,Current + 1);
current + 0 などはどうするのでしょうか?
よろしくお願いします。
テランス...
エラーは、GlobalVariableGet() が1つのパラメータ(変数名)しか持っていないことです。2番目のパラメータは必要ありません(関数の 呼び出しで持っている"false")
こんにちは、私はここで間違っている場所お願いし、誰かが私を伝えることができるでしょうか?私はエラーコード''間違ったパラメータは、赤で強調表示された行にカウントされます - しかし、すべてのパラメータが追加されます...
if ((GlobalVariableGet (barsGV) == 0)|| (GlobalVariableGet (barsGV) < Bars))
{
GlobalVariableSet(hasOrderedGV,false);
GlobalVariableSet(barsGV,Bars);
//--- ロングポジション(BUY)の可能性を確認する
if (GlobalVariableGet (hasOrderedGV, false)) Thanksこのコードに変更したら、少なくともエラーはなくなりました。
if (GlobalVariableGet (hasOrderedGV) == false)