ロットサイズ自動計算機能? - ページ 6

 
1005phillip:

どういたしまして。 そして、それがあなたのために動作していることを知らせてくれてありがとう、私はフィードバックを感謝します。 以前のコードで何がうまくいかなかったのかはわかりません。 おそらく、ある種のバグで、リビジョンの間に私が知らず知らずのうちに修正したのでしょう。

おそらく1~2週間以内に、MT4でクロスカレンシーペアのバックテストに使用するためのフォールバック機能を持つ最新版を用意する予定です。 今現在、私のロットサイズコードを使用しながらクロスペアをバックテストしようとすると、バックテスターが必要なカウンターとベースペアの市場価格にアクセスできないため、バックテストは失敗します。(これはライブやフォワードテストでの問題ではなく、純粋にMT4のバックテスターの制限です)

もしかしたら、あなたや他の人が役に立つかもしれないので、この橋を渡ったら、コードをアップします。

良い週末をお過ごしください。
- フィル

1005phillipさん、こんにちは。

私はこのスレッドを読んでいます。 もしまだ利用可能であれば、あなたのコードをテスト/使用することに興味があります。

最新のファイルは1ページ目にあるのですか、それとも個人的に提供しているのですか?


こんにちは。

spgandau

 

...と大声でたたかっていた。(フィリップ、フィリップ、フィリップ!」(笑)(笑)(笑)(笑)(笑)(笑)(笑)(笑)(笑)(笑)(笑)。

フィリップ、フィリップ、フィリップ!)ありがとうございます。

バックテストでは、前の方々と同じ「Error occurred while identifying SymbolType(), calculated SymbolType() = 6」エラーが出て、コードがうまくいったとは言えません。私はフォワードテストする必要があると思います。

私はすでにサンタクロースにクリスマスプレゼント2013のための大きな手紙を送った。

"親愛なるサンタクロース!

親愛なるサンタクロース!私は今年、耳の後ろを4回洗いました。私は今年4回も耳の後ろを洗ったので、この地球上で最も寛大なmql4コーダーであるPhillipのような頭脳を持っていたらと思います。サンタさん、どうか彼のmql4コーディング能力も入れてあげてください

ありがとう、フィリップ、ごめんね、サンタさん。"

よろしくお願いします。

楽しんできてください。


サイモン

 
1005phillip:

それを聞いてうれしいShawn!

もしあなたがより新しいバージョン(あなたが持っているものにバグはありません)をお望みなら、私はそれを共有するよりも幸せです。

変更点は主に、既存のEAと統合して使用するためにインクルードファイルをより簡単にすることです。 もう一つのEAはすでに実装されているので、今さら違いはないかもしれません。

ごきげんよう

EAのコーディング、または少なくともこのインジケータのMQを取得する手助けが必要です。

ファイル:
 
saintrose:

良い一日

EAのコーディング、またはこのインジケータのmqの取得を手伝ってほしい。

近所の人に聞くか、ここに行ってみてください。 MT4 & MT5 コーディングのヘルプを学ぶのが面倒な人のために
 
Shawn:

こんにちは、またまたお邪魔します :-)どなたか、自動的にロットサイズを計算する便利で小さなMQL4関数を お持ちではないでしょうか(どんなシンボルでも)。


ありがとうございます。

Shawn

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

//| マーケット情報分析

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

bool GetMarketInfo()

{

minSLTPdstnc = MarketInfo(Symbol(), MODE_STOPLEVEL);

if (Risk_Percentage>100 || Risk_Percentage<0 ) Risk_Percentage=10;

Margin_Required=MarketInfo(Symbol(), MODE_MARGINREQUIRED).Lotmin=MarketInfo(MODE_MARGINREQUIRED)。

lotmin=MarketInfo(Symbol(), MODE_MINLOT);

Lotmax=MarketInfo(Symbol(), MODE_MAXLOT)。

Lot_Step=MarketInfo(Symbol()、MODE_LOTSTEP);

Lot_Size=MarketInfo(Symbol(), MODE_LOTSIZE)。

Tick_Value=MarketInfo(Symbol()、MODE_TICKVALUE);

スプレッド=MarketInfo(Symbol(), MODE_SPREAD)。

return(true)とする。

}


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

//| ロット計測

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

double CheckLots (int risk_percent、double sl_size、double Static_Lot) {。

if (risk_percent<=0) return (Static_Lot);

double lots=0;

lots=NormalizeDouble( (AccountBalance()*Risk_Percentage/100) )/ (Tick_Value*sl_size), 2 );

if (lots*Margin_Required>AccountFreeMargin()){。

error("Not enough money to take " + DoubleToStr(lots,2) +" lots.");

lots=AccountFreeMargin()/Margin_Required;

}

lots=MathFloor(lots/Lot_Step + 0.5)* Lot_Step;

if ( lots < lotmin ) lots=lotmin;

if ( lots > lotmax ) lots=lotmax;

if ( lots > MaxLot ) lots = MaxLot;

return(lots);

}

 

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

フォーラムの一般的なルールとベストプラクティス。

あなたがコードを投稿するときは、SRCボタンを使用してください


こんにちは。

あなたの投稿を編集 し、コードを投稿 するときにCODE ボタンを使用してください。

エディタにコードボタン

ありがとうございます。

 
William Roeder:

こんにちは、それはスリップまたはギャップ価格の原因の未カウントの損失をカバーするためにお金の最後の損失から基づくロットサイズを数えることが可能である