GBP建ての口座でXAUUSDの間違ったロットサイジング? - ページ 5 12345 新しいコメント Simon Gniadkowski 2013.11.12 11:31 #41 DomGilberto: ありがとうございます :)- 今すぐ確認してみます! また、あなたの意見では、私がTick Valueを見る方法について、FXCMは間違っているのでしょうか?彼らは完全に正常であると頑強に主張しているのですか?なぜ彼らがそれを台無しにしているのか、あなたにはわからないでしょう? 私は彼らがやっていることをやっている理由を知らない ... あなたの議論の背後にあるいくつかの重量をしたい場合は、競合他社のいくつかをインストールし、彼らはティック値が設定されている方法を見て、彼らのライバルがやっていることを教えてください ... と彼らはまだ "正常 "を感じるかどうかを尋ねる... ... Dominic Gilbert 2013.11.12 11:37 #42 ああ、信じてください、私は5-6つの異なるブローカーをチェック しました!私はすでに彼らと取引を開始しているので、とても腹立たしいです。ブローカーの中でも、FXCMがこんなコックアップをするとは思わなかったよ :( ただ、好奇心で、あなたが添付したその前のリンクを読んだんだけど、このようにするのは簡単じゃないのかな?- プリントもありますね。私はそれをFXCMのライブ口座に落としたところです...。GBPUSDのTickValueをベースに、単純に* 0.10 ? 私が知らない唯一のものは、あなたが言ったように、ブローカーが正しい詳細を持っている場合、それによって、スイッチを作成する方法であり、それらを使用しますか?(正しい方向に私を指摘することができますか?) double risk_amount = AccountBalance( )* 2.00 / 100; double Lot_Step = MarketInfo(Symbol(), MODE_LOTSTEP); double ts = MarketInfo(Symbol(), MODE_TICKSIZE); double tv = MarketInfo(Symbol(), MODE_TICKVALUE); double minlot = MarketInfo(Symbol(), MODE_MINLOT); double GBPUSD = MarketInfo( "GBPUSD", MODE_TICKVALUE); double CustomTickValue = 0.10 * GBPUSD; Print(" Custom Tick Value is: ", 0.10, " * ", GBPUSD, " = ", CustomTickValue); 2013.11.12 11:32:33 Tick Value test XAUUSD,H1: Custom Tick Value is: 0.1 * 0.6296 = 0.063 double loss_for_1_lot = 25.25 / ( 0.10 * GBPUSD ) * ts ; Print(" loss_for_1_lot formula: ", 25.25, " / ", ts, " * (", CustomTickValue,") = ", loss_for_1_lot ); 2013.11.12 11:32:33 Tick Value test XAUUSD,H1: loss_for_1_lot formula: 25.25 / 0.01 * (0.063) = 4.0106 double LotSize_Buy = MathFloor( risk_amount / loss_for_1_lot/ Lot_Step) * Lot_Step ; Print(" LotSize_Buy: ( ", risk_amount, " / ", loss_for_1_lot, " / ", Lot_Step, " ) * ", Lot_Step, " = ", LotSize_Buy); 2013.11.12 11:32:33 Tick Value test XAUUSD,H1: LotSize_Buy: ( 76.0598 / 4.0106 / 1 ) * 1 = 18 Simon Gniadkowski 2013.11.12 11:56 #43 DomGilberto: ああ、私を信じて、私は約5-6異なるブローカーをチェックしました!私は、私が持っているため、非常に迷惑しています。私はすでに彼らと取引を開始しているので、私はとても迷惑しています。すべてのブローカーのうち、私はFXCMがそのようなコックアップを作るとは思わなかっただろう:( ただ、好奇心から、あなたが添付したその前のリンクを読みました;このようにするのは簡単ではないのですか? シンボルがXXXUSDで口座の通貨がGBPの場合、XXXYYのようなシンボルとZZZの口座通貨で 機能する機能があれば、このテーマについて再び懸念する必要はないでしょうか? 私が知らない唯一のものは、スイッチを作成する方法です、それによって、あなたが言ったように、ブローカーは正しい詳細を持っている場合、それらを使用しますか?(正しい方向に私を指摘することができますか?) 単純に計算して、計算された値をMarketInfo()の値と比較して、10%以上、20%以上違ったら..............................大きな違いだと思う。10%、20%......どの程度の誤差であれ、計算された値を使用するのです。 計算で使用する値が正しいことを確認する必要があります。そのためには、基本通貨 (EURGBP) が口座通貨 (GBP) と同じシンボルの Tick Value を取得すると 1.0 (5 桁のブローカー) になり、そこから Tick Value を求めるシンボルに戻って計算を行います。 Dominic Gilbert 2013.11.12 14:11 #44 グッドシャウト!もし時間があれば、これをちらっと見て、どう思うか見ていただけないでしょうか? 私はこれを非常に堅牢にしていないことを感謝します - 私は単に一時的な修正(私は一時的な言葉は危険な言葉であることを知っている!)を探しています、それは暫定的にFXCMで特に堅牢なままになります...。これはXAGUSDのためのものです。(すみません、間違ったものを投稿してしまったので、更新する必要がありました!) minLotは、銀なら50.00、金なら1.00のどちらかです。 //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- double ts = MarketInfo(Symbol(), MODE_TICKSIZE); double tv = MarketInfo(Symbol(), MODE_TICKVALUE); double GBPUSD_BID = MarketInfo( "GBPUSD", MODE_BID); double CustomTickValue; double EqualityTickValue = (( 0.10 / GBPUSD_BID * minLot ) - tv ) * 1000; Print(" EqualityTickValue formula is: ( ", 10, " / ", GBPUSD_BID, " * ", 50, " ) - ", tv, ") * ", 1000, " = ", EqualityTickValue); 2013.11.12 14:40:08 Tick Value test XAUUSD,H1: EqualityTickValue formula is: ( 10 / 1.5911 * 50 ) - 0.01) * 1000 = 3132.401 if( EqualityTickValue > 20.00 ) { CustomTickValue = (0.10 / GBPUSD_BID * minLot ); Print(" CustomTickValue is custom: ", 10, " / ", GBPUSD_BID, " * ", 50.00, " = ", CustomTickValue); 2013.11.12 14:40:08 Tick Value test XAUUSD,H1: CustomTickValue is custom: 10 / 1.5911 * 50 = 3.1424 } if( EqualityTickValue < 20.00) { CustomTickValue = tv; Print(" CustomTickValue is MarketInfo: ", tv); } //---- return(0); } ssn_ 2013.11.12 17:28 #45 DomGilberto: いい声だ。もし時間があれば、これをちらっと見て、どう思うか見ていただけませんでしょうか? 私はこれを非常に堅牢にしていないことを認めます - 私は単に一時的な修正(私は一時的という言葉が危険な言葉であることを知っている!)を探しています、それは暫定的にFXCMで特に堅牢なままになります...これはXAGUSDのためのものです。(すみません、間違ったものを投稿してしまったので、更新する必要がありました!) minLotは、銀なら50.00、金なら1.00のどちらかです。 以下は、より一般的なものです... これは、異なるブローカーによって他のシンボルをカバーするために拡張することができます。 ここで注目すべきは、BidUSDとAskUSDです。BidUSDは証拠金通貨の ドル価格です。例えば、あなたのトレードシンボルがGBPJPYだとすると、BidUSDはGBPUSDの価格となります。同様に、AskUSDはUSDJPYとなります。もしマージンまたは利益通貨のいずれかが米ドルであれば(例えばメジャー通貨)、BidUSD==AskUSD==TradeSymbolの現在価格となります。 この関数が返すのは、指定されたPriceDelta(入力の一つ)を通じてTradeSymbolを1ロット(1.0)保有した場合の利益/損失となります。 //+------------------------------------------------------------------+ //| Profit.mqh | //| ssn | //+------------------------------------------------------------------+ #property copyright "ssn" //#property version "3.31" double Profit(string TradeSymbol,double PriceDelta,double BidUSD,double AskUSD) { double _profit=0.0; if(StringFind(TradeSymbol,"TNOTE",2)>=0|| StringFind(TradeSymbol,"aTND",0)>=2){ _profit+=MarketInfo(TradeSymbol,MODE_LOTSIZE)*BidUSD; _profit*=PriceDelta;} else if(StringFind(TradeSymbol,"US500",0)>=0|| StringFind(TradeSymbol,"a500",0)>=0|| StringFind(TradeSymbol,"SPY",0)>=0){ _profit+=MarketInfo(TradeSymbol,MODE_LOTSIZE)*BidUSD; _profit*=PriceDelta;} else if(StringFind(TradeSymbol,"XAG",0)>=0||StringFind(TradeSymbol,"XAU",0)>=0){ _profit+=MarketInfo(TradeSymbol,MODE_LOTSIZE)*BidUSD; _profit*=PriceDelta; } else if(StringFind(TradeSymbol,"EUR",0)>=0|| StringFind(TradeSymbol,"GBP",0)>=0|| StringFind(TradeSymbol,"AUD",0)>=0|| StringFind(TradeSymbol,"NZD",0)>=0){ _profit+=MarketInfo(TradeSymbol,MODE_LOTSIZE)*BidUSD; if(StringFind(TradeSymbol,"USD",0)>=0){ _profit*=PriceDelta; } else if(StringFind(TradeSymbol,"USD",0)<0){ if(StringFind(TradeSymbol,"GBP",0)>=0|| StringFind(TradeSymbol,"AUD",0)>=0|| StringFind(TradeSymbol,"NZD",0)>=0){ _profit*=PriceDelta*AskUSD; } else if(StringFind(TradeSymbol,"CAD",0)>=0|| StringFind(TradeSymbol,"CHF",0)>=0|| StringFind(TradeSymbol,"JPY",0)>=0){ _profit*=PriceDelta; if(AskUSD!=0.0) { _profit/=AskUSD; } else if(AskUSD==0.0) { Print(" Ask's USD price is zero! ensure it's provided. "); return(0.0); }}}} else if(StringFind(TradeSymbol,"USD",0)>=0){ _profit = MarketInfo(TradeSymbol,MODE_LOTSIZE); if(StringFind(TradeSymbol,"CAD",0)>=0|| StringFind(TradeSymbol,"CHF",0)>=0|| StringFind(TradeSymbol,"JPY",0)>=0){ _profit*=PriceDelta; if(AskUSD!=0.0) { _profit/=AskUSD; } else if(AskUSD==0.0) { Print(" Ask's USD price is zero! ensure it's provided. "); return(0.0); }}} else if( StringFind(TradeSymbol,"CAD",0)>=0|| StringFind(TradeSymbol,"CHF",0)>=0){ if(BidUSD!=0.0) { _profit = MarketInfo(TradeSymbol,MODE_LOTSIZE)/BidUSD; } else if(BidUSD==0.0) { Print(" Bid's USD price is zero! ensure it's provided. "); return(0.0); } _profit*=PriceDelta; if(AskUSD!=0.0) { _profit/=AskUSD; } else if(AskUSD==0.0) { Print(" Ask's USD price is zero! ensure it's provided. "); return(0.0); }} return(_profit); } Dominic Gilbert 2013.11.12 23:14 #46 この記事から何を読み取ることができるかはわかりませんが、明日詳しく見てみます。 12345 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ありがとうございます :)- 今すぐ確認してみます!
また、あなたの意見では、私がTick Valueを見る方法について、FXCMは間違っているのでしょうか?彼らは完全に正常であると頑強に主張しているのですか?なぜ彼らがそれを台無しにしているのか、あなたにはわからないでしょう?
ただ、好奇心で、あなたが添付したその前のリンクを読んだんだけど、このようにするのは簡単じゃないのかな?- プリントもありますね。私はそれをFXCMのライブ口座に落としたところです...。GBPUSDのTickValueをベースに、単純に* 0.10 ?
私が知らない唯一のものは、あなたが言ったように、ブローカーが正しい詳細を持っている場合、それによって、スイッチを作成する方法であり、それらを使用しますか?(正しい方向に私を指摘することができますか?)
ああ、私を信じて、私は約5-6異なるブローカーをチェックしました!私は、私が持っているため、非常に迷惑しています。私はすでに彼らと取引を開始しているので、私はとても迷惑しています。すべてのブローカーのうち、私はFXCMがそのようなコックアップを作るとは思わなかっただろう:(
ただ、好奇心から、あなたが添付したその前のリンクを読みました;このようにするのは簡単ではないのですか?
シンボルがXXXUSDで口座の通貨がGBPの場合、XXXYYのようなシンボルとZZZの口座通貨で 機能する機能があれば、このテーマについて再び懸念する必要はないでしょうか?
minLotは、銀なら50.00、金なら1.00のどちらかです。
いい声だ。もし時間があれば、これをちらっと見て、どう思うか見ていただけませんでしょうか? 私はこれを非常に堅牢にしていないことを認めます - 私は単に一時的な修正(私は一時的という言葉が危険な言葉であることを知っている!)を探しています、それは暫定的にFXCMで特に堅牢なままになります...これはXAGUSDのためのものです。(すみません、間違ったものを投稿してしまったので、更新する必要がありました!)
minLotは、銀なら50.00、金なら1.00のどちらかです。
以下は、より一般的なものです...
これは、異なるブローカーによって他のシンボルをカバーするために拡張することができます。
ここで注目すべきは、BidUSDとAskUSDです。BidUSDは証拠金通貨の ドル価格です。例えば、あなたのトレードシンボルがGBPJPYだとすると、BidUSDはGBPUSDの価格となります。同様に、AskUSDはUSDJPYとなります。もしマージンまたは利益通貨のいずれかが米ドルであれば(例えばメジャー通貨)、BidUSD==AskUSD==TradeSymbolの現在価格となります。
この関数が返すのは、指定されたPriceDelta(入力の一つ)を通じてTradeSymbolを1ロット(1.0)保有した場合の利益/損失となります。
この記事から何を読み取ることができるかはわかりませんが、明日詳しく見てみます。