記事"このプロジェクトは、収益性の高いトレーディングロボットを作成する手助けになります! 少なくとも、そうなるでしょう。"についてのディスカッション - ページ 2

 
Rashid Umarov:

プロジェクトには、メインとなるコンパイル済みファイルを1つだけ置くことができる。他のソースはすべてインクルード・ファイルとして使用できる。

EX5ファイルは、コンパイル済みインジケーターなどのリソースとしてプロジェクトに含めることができます。

カスタムインジケーターを EAプロジェクトに含めるには?(リソースとしてではなく、編集可能なコードが利用できるようにします)。

 
Vladimir Karputov:

カスタムインジケーターを EAプロジェクトに含めるには?(リソースとしてではなく、編集可能なコードが利用できるように)

そのような可能性はありません。2485ビルドのアナウンスに あるように、インジケータはプロジェクトフォルダの外に置くことができますので、そのパスを正しく指定する必要があります。

Новая версия платформы MetaTrader 5 build 2485: улучшения в iCustom и общая оптимизация в MQL5
Новая версия платформы MetaTrader 5 build 2485: улучшения в iCustom и общая оптимизация в MQL5
  • 2020.06.05
  • www.mql5.com
В пятницу 5 июня 2020 года будет выпущена обновленная версия платформы MetaTrader 5...
 
Rashid Umarov:

そのような可能性はありません。2485ビルドのアナウンスにあるように、インジケータはプロジェクトフォルダの外側に置くことができるので、正しくパスを指定する必要があります。

明確にしてください:「今はそのような可能性はない」のですか?つまり、プロジェクト作成の ルールが厳しくなったということですか?

 
Vladimir Karputov:

明確に:「今はそのような可能性はない」?つまり、プロジェクトを作るためのルールが厳しくなったということですか?

昔からそうだった。

 
Rashid Umarov:

それがいつものやり方だ

私のプロジェクトはかなり前に作成されたもので、インジケータとExpert Advisorの両方がありました。インジケータとExpert Advisorの両方が1つのフォルダShared projectに入っていました。


2485で動かなくなりました。

さて、私はインジケータを別のフォルダに移しました - 共有プロジェクトの外に:(もちろん、私は新しい場所でそれをコンパイルしました)。

[データフォルダ]◆MQL5Indicators◆AlligatorAndStochasticヒストグラム◆AlligatorAndStochasticヒストグラム.mq5

Expert Advisorにパスを書きました。

   handle_iCustom=iCustom(m_symbol.Name(),Period(),"AlligatorAndStochastic\\AlligatorAndStochastic rectangles",

IndicatorsAlligatorAndStochastic histogramAlligatorAndStochastic histogramフォルダにアクセスしているはずです。


と表示されますが、エラーに なります:

        2020.01.30 00:00:00   AlligatorAndStochastic\AlligatorAndStochastic rectangles
        program file Experts\Shared Projects\AlligatorAndStochastic\AlligatorAndStochastic\AlligatorAndStochastic rectangles.ex5 read error
        program file Indicators\AlligatorAndStochastic\AlligatorAndStochastic rectangles.ex5 read error
        loading of AlligatorAndStochastic rectangles EURUSD,M15 failed [557]
        2020.01.30 00:00:00   cannot load custom indicator 'AlligatorAndStochastic\AlligatorAndStochastic rectangles' [4802]
        2020.01.30 00:00:00   Failed to create handle of the iCustom indicator for the symbol EURUSD/PERIOD_M15, error code 4802


しかし、ファイルは確かに存在します:


 

これらの奇跡は何ですか?

繰り返します:(以前は動作していた)バリアント - プロジェクト内にExpert Advisorとインジケータが一緒にあります。

   handle_iCustom=iCustom(m_symbol.Name(),Period(),"Shared Projects\\AlligatorAndStochastic\\AlligatorAndStochastic rectangles",

今日2485でエラーが発生し始めました - ファイルが見つかりません。


多くの実験の後、私はインジケータを共有プロジェクトの外に別のフォルダに移動しました。結果なし


フォルダを削除しました。プロジェクトのすべての変更をロールバックしました(つまり、COUNTERとINDICATORの両方が同じフォルダにあります):


誰がプロジェクト'AlligatorAndStochastic'をチェックしたいですか?

 
少し複雑で、MT4上のものなので、MT4上でコードを構築して使用できるかどうかはわかりません。
 


実際、MQL-projectsの現在の機能は非常に貧弱で、プロジェクトを組織するには本質的に適していません。そのため、多くの著名なフォーラムメンバーは、公開プロジェクトや非公開プロジェクトをホストするためにGithubを選択しています(例えば、Vasily Sokolov氏のPublicMqlProjects リポジトリは非常に有名です)。

最近、私は自分のエキスパート(SixPanels)の ために別々のグラフィカルコンポーネントをFreelanceに発注しました。しかし、私自身のノウハウを節約するためには、私にも顧客にも多くの非生産的な労働投入が必要でした:
- 私は、実際のクラスの作業をエミュレートした空のクラス一式を作成しなければならなかった。
-実装の過程で、顧客はこれらのクラスの一部を書き直さなければならなかった。これは、私が現在進めているEAの中心部分の開発(
)と同期させることなく行われた。- 注文に応えた結果、私はguiコンポーネントを私のコードに再統合する必要があり、guiコンポーネントのコードに変更を加えた。

さらに、2つ目の注文を可能にするために、統合されたguiコンポーネントのコードにvoidクラスを追加する必要がある。



。以下に説明するMQL-プロジェクト機能の欠点は、条件付きで2つのパートに分けられる。
A. プロジェクトの編成と維持管理に関する現行機能の欠点
B. プロジェクトの編成と維持管理に関する現行機能の欠点 。MQL5.comエコシステムへの統合という観点からの現行機能の欠点

Фриланс-сервис на MQL5.com: 6 графических панелей на библиотеке EasyAndFastGUI для торгового эксперта
Фриланс-сервис на MQL5.com: 6 графических панелей на библиотеке EasyAndFastGUI для торгового эксперта
  • www.mql5.com
Нужен программист по графике MQL5 с опытом разработки GUI, рассмотрю заявки с количеством выполненных проект от 50+, адекватным количеством арбитражей. Есть код советника выоской готовности, для него необходимо создать 6 панелей, используя библиотеку EasyAndFastGUI (на основе версии из этой статьи: Ссылка)/При этом сам дизайн панелей как...
 

А.MQL-projectsの現在の機能による、プロジェクトの組織化とメンテナンスのデメリット

参加者がMT5.ProjectsではなくGithubを選択するようになったデメリット

1.不完全なロール構造、個々のプロジェクトカタログへの個々の参加者のアクセスを提供する機能がない
ユースケース1: より大きなプロジェクトで作業の一部を実行するために、有償のフリーランサーを雇う
ユースケース2: 保護を目的とした開発者間の作業の分配
欠点をなくす方法: 個々のプロジェクトカタログのレベルでアクセス分配を作成し、現在のアクセス構造を以下に拡張する。所有者(プロジェクト全体のレベルでのフルアクセス+参加者の管理)、参加者(プロジェクト全体のレベルでのフルアクセス)、開発者(ルートディレクトリと個々のサブディレクトリのレベルでのフルアクセス)、オブザーバー(プロジェクト全体のレベルでのビューアクセス)。アクセス権を割り当てなければ、開発者の役割を持つ参加者は、すべてのサブディレクトリへのアクセス権を持たない。

2.タスクの スケジューリングと割り当て 機能がない
ユースケース 1: 実行するタスクのリストを固定し、参加者にタスクを割り当て/割り当てる必要がある
ユースケース 2: プロジェクト中に完了するタスクの順序構造を構築する必要がある
ユースケース 2:参加者の休日や活動しない期間を考慮する必要がある
欠陥を改善する方法:SVNクラウドストレージやファイルバージョンシステムと並行して、jiraサーバーシステムを立ち上げ、そのコンポーネントの一部をMetaEditorに統合する。MetaEditorでMQLプロジェクトを作成すると、SVNにファイルスペースが割り当てられ、Jiraシステムに新しいプロジェクトが自動的に登録されます。

3.1つのプロジェクト内で複数のmq5を実行/コンパイルする機能がない
使用例1: 異なるクラスでの並行開発が必要; テストの便宜のため、各開発者はプログラムのプライマリクラスのコピーを作成し、自分が改良しているネストされたクラスへの参照を変更する; テストをスピードアップするため、全員がプログラムのプライマリクラスの自分のインスタンスを実行する。
使用例2: プロセッサコア上のスレッドを分散させるために、分散 Expert Advisor を開発する。分散 Expert Advisor の各部分は、イベントシステムまたは共通ファイルを通じて互いに通信する。
例えば、私は現在2つのコンポーネントからなる Expert Advisor を持っている:Telegramボットのバックエンドは、1つのチャート上で独立したエキスパートとして動作し、コマンドを分析し、イベントを通じて、同じシンボルの別のチャート上でEAとして動作するコアにリダイレクトします(+サービスとして動作し、外部ソースからデータを供給する3x要素を追加する予定です)。
プロジェクトの中に2つ以上の.mq5ファイルがある場合、MetaEditorはプロジェクトレベルで参加者がコンパイルしたファイルを変更することができます。

4
.
使用例1: 外部インジケータはExpert Advisorの最も重要な部分であることが多く、計算機能とチャート上のビジュアライゼーションの両方を実行します。
使用例2: インジケータはインジケータフロー内で計算の並列化を可能にしません
この機能は以前は動作していましたが、何らかの理由で MetaEditor の最新バージョンで削除されました。
基本的には上記の投稿で説明されており、このトピックに個別のコメントは必要ないと思います。
不具合の修正方法:Expert Advisor 内で呼び出しの機能を復元し、プロジェクトのサブディレクトリに含まれる iCustom インジケータを介して作業します。

5.プロジェクトの異なるバージョンでの並行作業(別名:DevOps)をサポートする機能がない
使用例 1:リリースのスピードアップのため、異なる参加者が異なる段階でプロジェクトに取り組むようにする必要がある。
ユースケース 2: Expert Advisor が既に参加者によって実際の口座で取引に使用されている状況では、高品質のテスト付きリリースを提供する必要がある
欠点を解消する方法: プロジェクトのエディションの最小構造を作ること:最初にプロジェクトはDEVとして作成され、次にオーナーの役割を持つ参加者がTESTエディションを作成し、次にPRODを作成することができます。プロジェクトで作業している間、各参加者はプロジェクトのプロパティで設定することでバージョンを切り替え、前のエディションでの作業に戻ることができます。
 

В.MQL5.comエコシステムへの統合という観点から見たMQL-projectsの現在の機能の欠点


実際、MQL-projectsの 現在の機能はエコシステムとまったくつながっていないため、最も重要なリンクを確立することが問題である。
この場合の主な目標は、MQL5.comのエコシステムの発展と、場合によってはMQ社の追加収益化の両方である。

6.フリーランス・セクションとのつながり(1):参加者を見つけるための共同依頼の登録がない
ユースケース1:必要なスキルを持つプロジェクト参加者候補を見つける必要があり、パートナー候補の経験を理解する必要がある。
ユースケース2:参加すると面白いプロジェクトの候補リストを選別する必要がある。
この欠点を解消する方法:フリーランスのセクションに「プロジェクトボード」というサブセクションを設け、そこに主催者からの参加者探しの依頼を表示し(プロジェクトの実施に無償で参加)、最終的な結果を共同で使用する権利を与える。
追伸:現在、ある種の協力形態では、「無料でアドバイザーを書きます」などの個別のトピックの形で、フォーラムでの議論を犠牲にしている、しかし、実際には、それはプロジェクトのfunctioonを中心にどのような方法で組織されておらず、かなりの頻度で議論がスクラムと洪水のいくつかの種類に変わります。プロジェクト・ボードを組織化することで、この活動をプロジェクトの機能とリンクさせることができる。

7フリーランスへのリンク(2): プロジェクトを共同受注とする可能性がない
ユースケース1: 複数の参加者が、フリーランスの外部開発者の関与による新機能の作成に費用を支払う必要がある。
開発者を選択した後、この参加者は「開発者」のロールでプロジェクトにアクセスできる。契約上のアクセス権は、「所有者」のロールを持つ参加者が設定する。
マネタイズ(MQ の場合):共同受注の複雑さの増加、受注の平均チェックの増加の可能性。

8マーケットへのリンク(1): プロジェクト結果を販売する可能性がなく、自動的に利益分配を受ける
使用例 1: プロジェクトが完了した後、参加者はマーケットで Expert Advisor/utility を公開することを決定し、プロジェクトで固定された割合で利益分配の機能を必要とする。
開発者を選択した後、この参加者は

9 の役割でプロジェクトにアクセスできる。記事セクションへのリンク
ユースケース 1: ある有用なライブラリを含む一連の記事の出版後、著者はこのライブラリの開発への興味を失い、コミュニティには製品の組織的なサポート/開発のためのツールがない。
この欠点を解消する方法:多くの記事でライブラリを開発するすべての著者のために、公開プロジェクトの形でライブラリを公開することを必須要件に設定する。この場合、3番目の記事から、後続の各記事の前に所有者の役割を持つmql-communityの+1メンバー、または後続の各記事の前に所有者の役割を持つ+3メンバーをこのプロジェクトに含めることを追加要件に設定する必要があります。記事または参加者の役割を持つ+3人の参加者。
追伸. つまり、要するに - 著者の出版物が、プロジェクトの共同所有者になり、それをさらに発展させたいと思う人という形で、mql-communityの参加者の反応を見いだせないのであれば、このライブラリはコミュニティにとって興味深いものではなく、記事によるその発展は資金提供の対象とはならない。作者にはCodebaseで公開してもらいましょう。

10 .MQ-Messaging機能へのリンク
ユースケース1:参加者を集めた後、ディスカッションを開催する必要があるが、現在ではTelegramやWhatsApp、つまりMQL5エコシステムの外で開催されることがほとんどである。
この欠点を解消する方法:プロジェクトの設定で、プロジェクトに関連するMQ-Communicationsシステムにクローズド・チャンネルを開くチェックボックスを作成し、プロジェクト参加者を自動的に追加する。


上記の欠点を解消しない限り、この記事のような煽動は空疎なスローガンに過ぎない。
MQL-プロジェクトの枠組みの中で現在行われていることは、最初の基本的なステップとしか考えられません。
MQL-projectsの機能をMQL5.comのエコシステムに統合する新たなレベルに引き上げるには、上記の欠点を解消する必要があります。