記事"ビジュアルストラテジービルダー。 プログラミングなしでトレーディングロボットを作成する"についてのディスカッション - ページ 5 123456789101112...21 新しいコメント Andrey Barinov 2018.07.22 02:01 #41 Реter Konow:1.了解。スクロールは、ウィンドウのドラッグハンドルと同じです。一度押して、もう一回押してホールドするんだ。そうすればすべてうまくいく。 5.ウィンドウが表示範囲外になった場合は、メインスクロールバーを使う必要がある。そうすれば、可視範囲に戻すことができる。コメントありがとうございます! 1) 押したまま(離さずに1回)ホールドしてドラッグするだけです。1回ではなく、何度も何度も。) 5) スキームは下の部分でも移動できます。メインレイヤーもマップとしてスクロールバー なしで移動できます。空のスペースを "つかんで "移動する必要がある。 そう、リサイズなどのヒントは意図的に作らなかった。初めて見たときから、何がどこにあるのか覚えていて、必要ないにもかかわらず、いつも目が気になるのだ。 Реter Konow 2018.07.22 10:31 #42 Andrey Barinov:コメントをありがとう!1) 押したまま(離さずに1回)ホールドしてドラッグするだけです。一度だけでなく、何度も何度も。)5) スキームは下の部分でも移動できます。メインレイヤーもマップとしてスクロールバーなしで移動できる。空のスペースを "つかんで "移動する必要がある。そう、リサイズなどのヒントは意図的に作らなかった。何がどこにあるのかを最初に覚えたときから覚えていて、必要ないにもかかわらず、いつも目が気になるのだ。わかりました。ありがとう。本当に便利だ。でも、まだ最初のグリップで遠くまで引っ張ることができない。ウィンドウもスクロールも。でも、もう一度押すと、すべてがうまくいくんだ。 理由はわからない。 Evgeny Raspaev 2018.07.22 16:44 #43 MQLは非常に柔軟で強力な言語です。MQLは、トレーダーの頭をよぎるどんな「変態」でも、絶対にすべてを実装するために使用することができます。プログラムでは、すべてがプログラムの作者によって最初に設定された特定の制限の範囲内で実装されています。しかし、私はそれをMetaEditoreで、しかも無料で行うことができます。 Dmitiry Ananiev 2018.07.22 18:39 #44 MQLを学ぶのとこのコンストラクターを学ぶのと、どちらが簡単なのかさえ分からない......。 Maxim Dmitrievsky 2018.07.22 19:15 #45 単なるお遊びだ。FXは、このようなアプリケーションの需要が高い分野ではない Eugeni Neumoin 2018.07.22 19:25 #46 Aleksey Vyazmikin:アイデアはいいし、面白そうだが、出来上がったEAがすでに少し傾いている。このようなインターフェイスはMEに必要だ。四角いコードで書いて接続すれば便利だし、特に自分でアイコンを作って空白として保存できるのであれば、MQを考えてみよう。しかし、記事の最後と記事自体にコードがない、つまり製品の宣伝になっていることに戸惑う。製品に関する記事を書いて公開することが可能になったのか、それとも一部の人のための舞台裏の取り決めなのか?製品に関する記事を書くことは以前から可能です。もうひとつは、MQがすべての記事を通すとは限らないということです。掲載に値すると彼らが判断したものだけだ。 記事の著者は素晴らしい製品を作った。しかし、改善する必要がある。右と左のリストでマウスホイールを使うことが望ましい。これらのリストをスクロールするために。 この開発には大きな可能性を感じる。 ==== 悪い点このユーティリティ(Expert Advisor)をアンインストールすると、チャートのあるウィンドウの配色が変わります。インストール前は同じ配色でした。インストール後は配色が変わります。これはデメリットである。 チャートからユーティリティを削除する際には、ユーティリティのインストール前の配色に戻す必要があります。配色はまったく変えないほうがよい。すべての操作は、チャートの上に追加ウィンドウを作って行うべきである。これは私がパターンをグラフィカルに作成するときにやっている方法である。チャートの上にウィンドウを作り、そこにすべてを描く。このウィンドウを削除すれば、チャート上で何かを修正する必要はなくなる。ウィンドウで作成されたものはすべてファイルに保存される。 fxsaber 2018.07.22 23:27 #47 Andrey Barinov:トレード・クラスは静的クラスとして実装されており、他のコードとは別に使用することができます。生成されたソースコード(MQL5 >600Kb、EX5 >250Kb)のトレードクラスを興味深く見てみました。 class cTrade final { //==================== private: //==================== //=============== //=============== void cTrade(void){} virtual void ~cTrade(void){} //=============== //=============== static void AddCurrentTrades(const cTradesFilter &filter,long &tickets[]); static void AddCurrentOrders(const cPendingOrdersFilter &filter,long &tickets[]); static void AddHistoryTrades(const cTradesFilter &filter,long &tickets[]); static void AddHistoryOrders(const cPendingOrdersFilter &filter,long &tickets[]); //=============== //=============== static double CheckLot(const string symbol,const double lots); static bool CheckPlaced(const string symbol,const eTradeType type,const long magic); static bool CheckMargin(const string symbol,const double volume,const eTradeType type,const double price); static bool CheckOrderPrice(const string symbol,const ePendingOrderType type,const double price); static bool CheckStops(const string symbol,const eTradeType type,const bool istrade,const double entrylevel, const double stoploss,const double takeprofit); //=============== //=============== static int GetMatch(const cTradeInfo &trades[],const int forindex,const long &matched[]); static void TradesCloseBy(const long &tickets[],const bool slippageenabled,const long slippage,const ENUM_ORDER_TYPE_FILLING filling); //=============== //=============== static void ModifyTrade(const long ticket,const double newsl,const double newtp); static void ModifyPendingOrder(const long ticket,const double newprice,const double newsl,const double newtp,const datetime newexpiration); //=============== //=============== static void CloseBy(const long ticket1,const long ticket2,const ENUM_ORDER_TYPE_FILLING filling); //=============== //=============== static void BreakEven(const long ticket,const long belevel,const long beprofit); static void TrailingStop(const long ticket,const long tslstart,const long tsldistance,const bool tsllevelenabled,const double tsllevel); //=============== //=============== static void CalculateSLandTP(const string symbol,const eTradeType type,const double entrylevel,const double lots, const bool slpointsenabled,const long slpoints,const bool tppointsenabled,const long tppoints, const bool slmoneyenabled,const double slmoney,const bool tpmoneyenabled,const double tpmoney, const bool slpriceenabled,const double slprice,const bool tppriceenabled,const double tpprice, double &sllevel,double &tplevel); //=============== //=============== static bool CanTrade(void); //=============== //=============== //==================== public: //==================== //=============== //=============== static long ProfitPointsGet(const eTradeType type,const double openprice,const double closeprice,const string symbol); static double CommissionGet(const long positionID); //=============== //=============== static void GetFilteredTradesTickets(const cTradesFilter &filter,long &tickets[]); static void GetFilteredPendingOrdersTickets(const cPendingOrdersFilter &filter,long &tickets[]); //=============== //=============== static double GetLot(const string symbol,const long slpoints,const double moneyrisk); //=============== //=============== static void OpenTrade(const string symbol,const eTradeType type,const double lots,const long magic,const string comment, const bool slpointsenabled,const long slpoints,const bool tppointsenabled,const long tppoints, const bool slmoneyenabled,const double slmoney,const bool tpmoneyenabled,const double tpmoney, const bool slpriceenabled,const double slprice,const bool tppriceenabled,const double tpprice, const bool slippageenabled,const long slippage, const ENUM_ORDER_TYPE_FILLING filling); static void PlacePendingOrder(const string symbol,const double price,const ePendingOrderType type,const double lots, const long magic,const string comment, const bool slpointsenabled,const long slpoints,const bool tppointsenabled,const long tppoints, const bool slmoneyenabled,const double slmoney,const bool tpmoneyenabled,const double tpmoney, const bool slpriceenabled,const double slprice,const bool tppriceenabled,const double tpprice, const bool expirationenabled,const datetime expiration, const ENUM_ORDER_TYPE_FILLING filling); //=============== //=============== static void ModifyTrade(const long ticket,const bool tightenstopsonly, const bool slpointsenabled,const long slpoints,const bool tppointsenabled,const long tppoints, const bool slmoneyenabled,const double slmoney,const bool tpmoneyenabled,const double tpmoney, const bool slpriceenabled,const double slprice,const bool tppriceenabled,const double tpprice); static void ModifyTrades(const long &tickets[],const bool tightenstopsonly, const bool slpointsenabled,const long slpoints,const bool tppointsenabled,const long tppoints, const bool slmoneyenabled,const double slmoney,const bool tpmoneyenabled,const double tpmoney, const bool slpriceenabled,const double slprice,const bool tppriceenabled,const double tpprice); //=============== //=============== static void ModifyPendingOrder(const long ticket,const bool priceenabled,const double price,const bool tightenstopsonly, const bool slpointsenabled,const long slpoints,const bool tppointsenabled,const long tppoints, const bool slmoneyenabled,const double slmoney,const bool tpmoneyenabled,const double tpmoney, const bool slpriceenabled,const double slprice,const bool tppriceenabled,const double tpprice, const bool expirationenabled,const datetime expiration); static void ModifyPendingOrders(const long &tickets[],const bool priceenabled,const double price,const bool tightenstopsonly, const bool slpointsenabled,const long slpoints,const bool tppointsenabled,const long tppoints, const bool slmoneyenabled,const double slmoney,const bool tpmoneyenabled,const double tpmoney, const bool slpriceenabled,const double slprice,const bool tppriceenabled,const double tpprice, const bool expirationenabled,const datetime expiration); //=============== //=============== static void CloseTrade(const long ticket, const bool slippageenabled,const long slippage, const ENUM_ORDER_TYPE_FILLING filling); static void CloseTrades(const long &tickets[],const bool closeby, const bool slippageenabled,const long slippage, const ENUM_ORDER_TYPE_FILLING filling); //=============== //=============== static void DeletePendingOrder(const long ticket); static void DeletePendingOrders(const long &tickets[]); //=============== //=============== static void BreakEven(const long &tickets[],const long belevel,const long beprofit); static void TrailingStop(const long &tickets[],const long tslstart,const long tsldistance,const bool tsllevelenabled,const double tsllevel); //=============== //=============== }; この行の目的は何ですか? static bool cTrade::CheckPlaced(const string symbol,const eTradeType type,const long magic) { //=============== const int ordersnumber=::OrdersTotal(); //=============== //=============== for(int i=0;i<ordersnumber && !::IsStopped();i++) { //=============== const long ticket=(long)::OrderGetTicket(i); //=============== if(::OrderGetInteger(ORDER_POSITION_ID)>0)continue; //=============== IDが0でないライブ注文 - 部分約定? コードにFillingの計算が見つかりませんでした。 Andrey Barinov 2018.07.23 03:54 #48 fxsaber:生成されたソースのトレーディングクラス(MQL5 >600Kb、EX5 >250Kb)を興味深く見た。この行の目的は何でしょうか?IDが0でないライブ注文 - 一部約定?コードの中にFillingの計算が見つかりません。#1.これは以下に基づいています:#9 #2.私は、すべてのブローカーで機能するような、フィリング計算のバリエーションを見つけることができませんでした。そのため、対応するエレメントのパラメータを設定することによって、ユーザー自身がそれをコントロールすることを提案します。 Andrey Barinov 2018.07.23 04:00 #49 Eugeni Neumoin:製品に関する記事を書くことは以前から可能でした。もうひとつ、MQはすべての記事を受け入れるとは限らない。掲載に値すると思われるものだけです。記事の著者は素晴らしい製品を作った。しかし、改善する必要がある。右と左のリストでマウスホイールを使うことが望ましい。これらのリストをスクロールするにはこの開発には大きな可能性を感じる。====悪い点このユーティリティ(Expert Advisor)をアンインストールすると、チャートウィンドウの配色が変わります。ユーティリティのインストール前は同じ配色でした。インストール後は配色が変わります。これは欠点である。チャートからユーティリティを削除する際には、ユーティリティのインストール前の配色に戻す必要があります。配色はまったく変えないほうがよい。すべての操作は、チャートの上に追加ウィンドウを作って行うべきである。これは私がパターンをグラフィカルに作成するときにやっている方法である。チャートの上にウィンドウを作り、そこにすべてを描く。このウィンドウを削除すれば、チャート上で何かを修正する必要はなくなる。ウィンドウで作成されたものはすべてファイルに保存されます。コメントありがとうございます! あなたのインジケーターでは、パネルがチャートの全領域を占めるわけではないので、チャートのレイアウトは変わりません。私の場合、使用可能なサイズ全体にパネルがあるので、チャートのスキームを変更しないと、不快なアーティファクトが発生します。 チャートからユーティリティを削除するときは、すべてを元の状態に戻すことを考えます。将来のバージョンではホイール・スクロールを追加するつもりです。ありがとう! fxsaber 2018.07.23 09:08 #50 Andrey Barinov:#1.9番が ベースになっているんだ。 ありがとう。 #2.私は、すべてのブローカーで機能するような計算充填の実用的なバリエーションを見つけることができませんでした。そのため、対応する要素のパラメータを設定することによって、ユーザー自身がそれを制御することを提案しています。GetFillingが動作しないデモサーバーの名前を送っていただけますか? 123456789101112...21 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
1.了解。スクロールは、ウィンドウのドラッグハンドルと同じです。一度押して、もう一回押してホールドするんだ。そうすればすべてうまくいく。
5.ウィンドウが表示範囲外になった場合は、メインスクロールバーを使う必要がある。そうすれば、可視範囲に戻すことができる。
コメントありがとうございます!
1) 押したまま(離さずに1回)ホールドしてドラッグするだけです。1回ではなく、何度も何度も。)
5) スキームは下の部分でも移動できます。メインレイヤーもマップとしてスクロールバー なしで移動できます。空のスペースを "つかんで "移動する必要がある。
そう、リサイズなどのヒントは意図的に作らなかった。初めて見たときから、何がどこにあるのか覚えていて、必要ないにもかかわらず、いつも目が気になるのだ。
コメントをありがとう!
1) 押したまま(離さずに1回)ホールドしてドラッグするだけです。一度だけでなく、何度も何度も。)
5) スキームは下の部分でも移動できます。メインレイヤーもマップとしてスクロールバーなしで移動できる。空のスペースを "つかんで "移動する必要がある。
そう、リサイズなどのヒントは意図的に作らなかった。何がどこにあるのかを最初に覚えたときから覚えていて、必要ないにもかかわらず、いつも目が気になるのだ。
わかりました。ありがとう。本当に便利だ。でも、まだ最初のグリップで遠くまで引っ張ることができない。ウィンドウもスクロールも。でも、もう一度押すと、すべてがうまくいくんだ。
理由はわからない。
アイデアはいいし、面白そうだが、出来上がったEAがすでに少し傾いている。
このようなインターフェイスはMEに必要だ。四角いコードで書いて接続すれば便利だし、特に自分でアイコンを作って空白として保存できるのであれば、MQを考えてみよう。
しかし、記事の最後と記事自体にコードがない、つまり製品の宣伝になっていることに戸惑う。製品に関する記事を書いて公開することが可能になったのか、それとも一部の人のための舞台裏の取り決めなのか?
製品に関する記事を書くことは以前から可能です。もうひとつは、MQがすべての記事を通すとは限らないということです。掲載に値すると彼らが判断したものだけだ。
記事の著者は素晴らしい製品を作った。しかし、改善する必要がある。右と左のリストでマウスホイールを使うことが望ましい。これらのリストをスクロールするために。
この開発には大きな可能性を感じる。
====
悪い点このユーティリティ(Expert Advisor)をアンインストールすると、チャートのあるウィンドウの配色が変わります。インストール前は同じ配色でした。インストール後は配色が変わります。これはデメリットである。
チャートからユーティリティを削除する際には、ユーティリティのインストール前の配色に戻す必要があります。配色はまったく変えないほうがよい。すべての操作は、チャートの上に追加ウィンドウを作って行うべきである。これは私がパターンをグラフィカルに作成するときにやっている方法である。チャートの上にウィンドウを作り、そこにすべてを描く。このウィンドウを削除すれば、チャート上で何かを修正する必要はなくなる。ウィンドウで作成されたものはすべてファイルに保存される。
トレード・クラスは静的クラスとして実装されており、他のコードとは別に使用することができます。
生成されたソースコード(MQL5 >600Kb、EX5 >250Kb)のトレードクラスを興味深く見てみました。
この行の目的は何ですか?
IDが0でないライブ注文 - 部分約定?
コードにFillingの計算が見つかりませんでした。
生成されたソースのトレーディングクラス(MQL5 >600Kb、EX5 >250Kb)を興味深く見た。
この行の目的は何でしょうか?
IDが0でないライブ注文 - 一部約定?
コードの中にFillingの計算が見つかりません。
#1.これは以下に基づいています:#9
#2.私は、すべてのブローカーで機能するような、フィリング計算のバリエーションを見つけることができませんでした。そのため、対応するエレメントのパラメータを設定することによって、ユーザー自身がそれをコントロールすることを提案します。
製品に関する記事を書くことは以前から可能でした。もうひとつ、MQはすべての記事を受け入れるとは限らない。掲載に値すると思われるものだけです。
記事の著者は素晴らしい製品を作った。しかし、改善する必要がある。右と左のリストでマウスホイールを使うことが望ましい。これらのリストをスクロールするには
この開発には大きな可能性を感じる。
====
悪い点このユーティリティ(Expert Advisor)をアンインストールすると、チャートウィンドウの配色が変わります。ユーティリティのインストール前は同じ配色でした。インストール後は配色が変わります。これは欠点である。
チャートからユーティリティを削除する際には、ユーティリティのインストール前の配色に戻す必要があります。配色はまったく変えないほうがよい。すべての操作は、チャートの上に追加ウィンドウを作って行うべきである。これは私がパターンをグラフィカルに作成するときにやっている方法である。チャートの上にウィンドウを作り、そこにすべてを描く。このウィンドウを削除すれば、チャート上で何かを修正する必要はなくなる。ウィンドウで作成されたものはすべてファイルに保存されます。
コメントありがとうございます!
あなたのインジケーターでは、パネルがチャートの全領域を占めるわけではないので、チャートのレイアウトは変わりません。私の場合、使用可能なサイズ全体にパネルがあるので、チャートのスキームを変更しないと、不快なアーティファクトが発生します。
チャートからユーティリティを削除するときは、すべてを元の状態に戻すことを考えます。
将来のバージョンではホイール・スクロールを追加するつもりです。ありがとう!
#1.9番が ベースになっているんだ。
ありがとう。
#2.私は、すべてのブローカーで機能するような計算充填の実用的なバリエーションを見つけることができませんでした。そのため、対応する要素のパラメータを設定することによって、ユーザー自身がそれを制御することを提案しています。
GetFillingが動作しないデモサーバーの名前を送っていただけますか?