オープンソースは、オープンソース標準の下でライセンスされているソフトウェアです。オープン性の原則は、ソフトウェア開発の領域だけではありません。たとえば、デザイナーは無料のテンプレートとフォントへのアクセスを提供します。一部の国では、政府機関がオープンソースソフトウェアに切り替えています。ドイツでは、ミュンヘン市がUbuntuのカスタマイズバージョンであるLiMuxオペレーティングシステムに切り替えることを決定しました。ハンブルクでは、当局はMicrosoftOfficeの代わりにPhoenixオフィススイートを使用することを決定しました。英国政府はPDFからODFに切り替えました。フランスでは、憲兵隊はUbuntuOSと無料のLibreOfficeを使用しています。
オープンソースソフトウェアの要件
オープンソースライセンスの下で配布されるアプリケーションが満たさなければならない主な要件をリストしてみましょう。
- プログラムは無料で配布されます。
- ソフトウェアにはソースコードが付属しています。基本キットに含まれていない場合は、自由にダウンロードするか、別の方法で入手できます。
- コードを変更したり、コードの一部を他のプロジェクトで使用したりできます。変更したアプリケーションは、オープンソースライセンスの条件に基づいて再配布する必要があります。
- 人々のグループを差別することは許可されていません。たとえば、米国ではプログラムの輸出に制限がありますが、無料ライセンスでは独自の禁止事項を確立することはできません。
- オープンソースライセンスは、アプリケーションのすべての使用を許可するため、開発者の個人的な道徳的信念が配布を妨げることはありません。たとえば、次のような条項は受け入れられません。
- オープンソースライセンスに関連するすべてのルールはすべてのユーザーで同じであり、機密保持などの追加の契約は禁止されています。
- ライセンスをプログラムに関連付けることはできません。コードの一部のみを使用する開発者は、製品全体が提供する権利を持っています。
- ユーザーは使用するものを選択できます。たとえば、オープンソースで提供されるソフトウェアがオープンソースであることを要求することは禁じられています。
オープンソースプロジェクト-その機能は何ですか
オープンソースライセンスの下で配布されるほとんどのアプリケーションには、次の違いがあります。
- プログラムはそれらを使用する人によって書かれているため、開発者はコードを監視し、エラーをすばやく修正し、脆弱性を発見します。
- ほとんどの製品は、いくつかのオペレーティングシステムと互換性があります。
- オープンソース開発者コミュニティは、提案を提出できるユーザーに連絡するために開かれています。
- 通常、無料ソフトウェアの更新は商用ソフトウェアよりも頻繁にリリースされるため、エラーはより早く排除されます。
- ユーザーは、必要に応じて、好きなアプリケーションをお金でサポートできます。
- オープンソースプログラムはソースコードに付属しているため、インストール時にコンピューターやスマートフォンに感染するリスクは最小限に抑えられます。
自由ソフトウェアの出現の歴史
自由ソフトウェア運動の創設者はリチャード・ストールマンであると信じられています。 MITの人工知能研究所で働いている間、彼は自由ソフトウェアの開発に貢献しました。たとえば、PDPコンピュータ用のテキストエディタEMACSを作成する場合です。 1984年、ストールマンはMITでの仕事を辞め、GNUプロジェクトを設立しました。その愛好家は「フリーソフトウェア」という用語を作り出し、GNUマニフェストを開発しました。
リチャード・ストールマン[/ caption] 1985年、ストールマンはフリーソフトウェアファウンデーション(FSF)を設立しました。これは、自発的な寄付を通じてフリーソフトウェアを開発するために使用されました。 1989年に、最初のGeneral Public License(GPL)が導入されました。これは、ユーザーを保護し、アプリケーションをコピー、変更、および配布する権利を付与しました。その後、カリフォルニア大学で開発されたマサチューセッツ工科大学とBSDからのライセンスがありました。 1991年までに、独立したオペレーティングシステムが開発されましたが、カーネルが不足していました。同じ年に、Linus TorvaldsはLinuxカーネルを導入しました。これは、1992年にGPLの下でライセンス供与されました。前世紀の90年代半ばに、大企業はオープンソース市場に関心を持ち始めました。最初はNetscapeでした。彼女がリリースしたブラウザは、当時最も人気のあるブラウザの1つと見なされていました。 1998年に、彼女はそのソースを開きました。会社が存在しなくなった後、MozillaFirefoxブラウザはナビゲーターコードから作成されました。現在、1998年に設立されたオープンソースイニシアチブは、オープンソースソフトウェアの開発とプロモーションに取り組んでいます。オープンソースのポイントは何ですか:https://youtu.be/8G3Dz_GyPI0
オープンソースライセンス
いくつかの異なるオープンソースライセンスがあります。それらを理解しやすくするために、次の図を示します。これは、それらが互いにどのように異なるかを示しています。
オープンソースライセンス[/ caption]では、最も人気のあるライセンスについて説明しましょう。
- MITライセンスは、米国の主要な教育機関の1つであるマサチューセッツ工科大学で開発されました。これは、BSDライセンスの3条項バージョンとほぼ完全に一致しており、広告での作者の名前の使用を禁止する条項が1つだけ追加されています。その下に出てきたのは、XFree86、Expat、PuTTYなどの製品です。
- BSDライセンスは、同じ名前のオペレーティングシステムを配布するために、前世紀の80年代初頭に最初に登場しました。このライセンスには次のオプションがあります。
- オリジナルBSDライセンスは、4条項ライセンスとも呼ばれる最初のオリジナルライセンスです。
- 変更されたBSDライセンスは、3条項のライセンスであり、1つの条項は除外されています。これは、このアプリケーションがカリフォルニア大学で開発されたソフトウェアを使用していることを広告で示すことを義務付けています。
- 特許で保護されたアプリケーション用に開発されたIntelライセンス。オープンソースイニシアチブではサポートされていません。 GitHubで使用されるライセンス[/ caption]
- GNU General PublicLicenseは最も人気のあるライセンスです。彼女は1988年に登場しました。1991年に、GPL v2の改良版が登場しましたが、これは今日までその関連性を失っていません。2006年に、GPLv2ライセンスが採用されました。
- GNU劣等一般公衆利用許諾契約書(略してGNU LGPL)は、ライブラリを他のライセンスの下で配布されているソフトウェアとリンクするために作成されました。
- Apacheライセンスを使用すると、ソースとバイナリの両方でプログラムを変更および再配布できます。製品の権利に加えて、特許の譲渡も想定されています。
- GuileはGNUGPLに似ていますが、オープンソースと非フリーソフトウェアのマージを許可する条項が追加されているため、厳密なコピーレフトとは見なされませんが、それでもGNUGPLと互換性があります。
- 一般的な公共のライセンスは、その発展のためにIBMによって開発されました。コードを変更して、商用プログラムで使用することができます。このライセンスは、MicrosoftがWindowsインストーラーXMLに使用しました。
- Mozilla Public License(MPL)は、厳密なコピーレフトではない複雑なライセンスです。
- ライセンス日Publiのは、 MPLに似ライセンスC、しかしマイナーな変更は、Netscapeは、Sun Microsystemsが記載されているのではなく、例えば、そこにあります。
Guile、Common Public License、Mozilla Public Licenseなど、あまり一般的ではないライセンスもあります。https://youtu.be/oAW5Dh9q3PM
オープンソースプロジェクトの例
LinuxカーネルとGNUアプリケーションの開発は、他のオープンソースアプリケーションの基礎となりました。 Netscapeの登場は、大規模なIT企業に関心を持っていました。それ以来、多くの異なる製品が開発されてきました。最初に、1994年から1995年までフリーソフトウェアファウンデーションをサポートしたDebianについて言及し、その後、プロジェクトに資金を提供し続けたPublicInterest非営利組織のソフトウェアが作成されました。このプロジェクトのフレームワーク内で、オペレーティングシステムだけでなく、オフィススイートのLibreOffice、Firefoxブラウザー、Evolutionメールクライアント、K3b CD書き込みアプリケーション、VCLビデオプレーヤー、GIMPイメージエディターなどの製品も作成されました。 。非営利企業であるApacheSoftware Foundationは、オープンソースソフトウェアサポートプロジェクトとして登場しました。この組織で最も人気のある製品は、同じ名前のWebサーバーです。同社は現在、Apacheライセンスの下で配布される多数のプロジェクトをサポートしています。 ASFのスポンサーには、Microsoft、Amazon、Huaweiが含まれます。もう1つのオープンソース企業はRedHatです。その主な開発は、Linuxカーネルに基づくオペレーティングシステムです。彼女はソフトウェアだけでなく、技術サポートや専門家のトレーニングにも携わっています。 2018年にIBMに買収されました。 Googleは自由ソフトウェアも開発しています。彼女は、機械学習システムを開発するためのTensorFlowライブラリ、Go言語、ソフトウェアのデプロイを自動化するためのKubernetesプログラム、およびその他の製品を開発およびサポートしています。科学では、オープンソースはソフトウェアだけでなく、作品の出版にも関わっています。ピアレビューと教育リソースのサポート。 1991年、ポールギンスパーグは、ロスアラモス研究所で電子アーカイブarXivを組織しました。このアーカイブでは、物理学だけでなく、医学、数学、その他の科学の分野でも作品を見つけることができます。 CERNには、オープンな科学的研究を行うポータルもあります。
オープンソースオペレーティングシステム-オープンソースオペレーティングシステム[/ caption]
オープンソースプロジェクトに参加する方法
プログラミングを練習して履歴書を記入したい場合は、オープンソース製品の開発に参加することがまさに必要です。これに必要なものを段階的に説明します。まず、GitHubに登録して、参加するプロジェクトを選択する必要があります。それはあなたにとって興味深いはずです。実行できるタスクがたくさん含まれていると便利です。プロジェクトの人気にも注意を払う必要があります。それは星の数によって決定されます。開発がどれほど活発で、最後の変更がいつ行われたかを判断することも重要です。興味深いプロジェクトを選んだら、キュレーターを見つけて彼との交流を確立する必要があります。次のステップは、タスクを選択することです。まず、最も単純なタスクを選択することをお勧めします。主なことはあなたがそれを解決できるということです。その後、プロジェクトをあなたの場所に転送し、必要なすべてのツールをインストールします。問題を解決したら、リポジトリ内のコードを変更するための提案を行います。これを行うには、コードをGitHubにアップロードし、[プルリクエスト]ボタンをクリックする必要があります。その後、リクエストの名前と説明を入力する必要があります。その後、キュレーターが提案された変更を受け入れるか拒否するのを待つ必要があります。仕事を引き受けた後、他の緊急の問題が現れた場合、またはあなたが対処できないことに気付いた場合、あなたはその仕事を拒否することができます。これは正常ですが、キュレーターに決定を伝える必要があります。その後、リクエストの名前と説明を入力する必要があります。その後、キュレーターが提案された変更を受け入れるか拒否するのを待つ必要があります。仕事を引き受けた後、他の緊急の問題が現れた場合、またはあなたが対処できないことに気付いた場合、あなたはその仕事を拒否することができます。これは正常ですが、キュレーターに決定を伝える必要があります。その後、リクエストの名前と説明を入力する必要があります。その後、キュレーターが提案された変更を受け入れるか拒否するのを待つ必要があります。仕事を引き受けた後、他の緊急の問題が現れた場合、またはあなたが対処できないことに気付いた場合、あなたはその仕事を拒否することができます。これは正常ですが、キュレーターに決定を伝える必要があります。
トレーディングロボットの開発におけるオープンソースの使用
トレーディングアドバイザーまたは
ロボットは、所定のアルゴリズムに従って取引所で取引を行うプログラムです。それらは完全に独立して、または半自動モードで取引することができます。2番目のケースでは、彼らは単に取引についてのシグナルを送信し、トレーダーが最終決定を下します。トレーディングロボットの利点をリストアップしましょう:
- トレーダーは自分で価格を追跡する必要はありません。
- エキスパートアドバイザーは、特定のアルゴリズムに従って厳密に動作し、感情はありません。
- ロボットは人間よりもはるかに速く反応します。
しかし、長所に加えて、自動アドバイザーには短所もあります。
- 非標準的な状況では、たとえば、レートが急激に上昇すると、アドバイザーが不適切に反応し、トレーダーがお金を失う可能性があります。
- 一部の専門顧問は、サブスクリプション料金を支払う必要があります。
次に、いくつかのオープンソーストレーディングアドバイザーを見てみましょう。これらはGitHubからダウンロードしてインストールし、取引に使用できます。ソースコードを改善して、自分用のロボットを作成することもできます。
GEKKOボット
これは、何年も前に登場した実績のあるアドバイザーです。多くのトレーダーがこのロボットで取引を始めました。現在、作成者はサポートしていませんが、GitHubから無料でダウンロードできます。暗号通貨取引所で使用でき、市場情報を収集して注文することができます。GEKKOボットには多くの設定があり、取引アルゴリズムをテストしたり、取引を行うためのシステムを調整および最適化することができます。カスタマイズ可能な一連の既成の戦略があります。独自の取引システムを作成することも可能です。Bitfinex、EXMO、Bittrex、Bitstampを含む23の交換をサポートします。
Zenbot
Zenbot暗号通貨取引アドバイザーは、取引に人工知能を使用しています。ご希望に応じてカスタマイズすることが可能です。ほとんどのオペレーティングシステムと互換性があります。高頻度取引を行うことができ、同時に複数の資産を取引することができます。さらに、このボットは暗号通貨を調停することでお金を稼ぐことができます。ただし、グラフィカルユーザーインターフェイスはありません。次の取引所で取引できます:Bittrex、Quadria、GDAX、Pollniex、Gemini。
OsEngine
OsEngineは、取引所取引アプリケーションのスイートです。含まれるもの:
- データ-さまざまなソースから履歴データをロードするために使用されます。
- オプティマイザー-1つの戦略をテストするために使用されます。
- テスター-いくつかの取引アルゴリズムをテストしますが、パラメーターを変更しません。複数の時間枠と機器で同時に動作できます。
- マイナー-チャート上で収益性の高いパターンを検索します。見つかったフォームは実際の取引で使用できます。
- トレーダーは取引のためのモジュールです。
OsEngineは30以上の組み込みトレーディングシステムを使用しており、その中にはトレンド(たとえば、ビルウィリアムズやジェシーリバモアの戦略)、カウンタートレンド(たとえば、バラスト、ボリンジャーラインを使用
)、裁定取引があります。一部の国際取引所(LMAX、InteractivBrokers、忍者取引が利用可能)、
MOEX(Transac、
Quik、Most Asts、Plaza 2、SmartCom)、暗号通貨取引所(Bitstamp、Bitfinex、Kraken、LiveCoin、ExMo、Binance、ZB、 Bitmex、BitMax)。1つのOanda外国為替取引所とも互換性があります。ブローカーAtentisまたは単純なTradingBotロボットを介してモスクワ証券取引所で取引するための、他の人気のあるオープンソース取引アドバイザー、たとえばTradingBotがあります。