Python 戦略プログラムで使用される Python インタープリタを設定する
Pythonで書かれた戦略,バックテストやライブ取引の際に,dockerシステム環境がPython2とPython3の両方をインストールしている場合,戦略の最初の行で実行時に起動する Pythonバージョンを設定できます.#!python3
そして#!python2
絶対的な経路も指定できます 例えば:#!/usr/bin/python3
.
Python ベースの戦略セキュリティ
FMZ Quant トレーディング プラットフォームで取引戦略が開発されたとき,戦略の内容は FMZ のアカウント所有者にのみ表示されます.そして FMZ Quant トレーディング プラットフォームでは,戦略コードの完全なローカライゼーションを達成できます.例えば,戦略ロジックは,パイソン戦略コンテンツのローカリゼーションが実現できるようにします.
Python コードのセキュリティ:
Pythonはオープンソース言語で,解読が非常に簡単なので,戦略が個人用ではなく,レンタル用であれば,戦略を自分のデプロイドーカーで実行し,サブアカウントまたは完全なドーカー管理の形でレンタルすることができます.
Python 戦略コードの暗号化:
標準では,Python 戦略コードは,作者が使用するときに暗号化されず,他人に貸し出されると暗号化されます. Python 戦略の開始時に以下のコードを編集することで,個人用または貸し出用の戦略コードを暗号化するかどうかを指定できます. 戦略コードの暗号化をサポートする Python バージョンは以下のとおりです: Python 2.7, Python 3.5 および Python 3.6.
戦略の作成者が自分で実行するか,登録コードを通じて他者のために使用する場合,戦略コードは暗号化されます.
指定する#!python
Python インタープリタのバージョンとして,それから使用,
暗号化コマンドを入力しますencrypt
Python のバージョンを指定しない場合は,追加できます.#!,encrypt
directly.
#!python,encrypt
それとも
#!encrypt
戦略の作成者が自分のために実行し,登録コードを通じて他者と共有するときに,戦略コードを暗号化しません:
#!python,not encrypted
それとも
#!not encrypted
コードを使用os.getenv('__FMZ_ENV__')
文字列の返信"encrypt"
これは,ライブ取引でのみ有効で,バックテストは暗号化しません.Python
戦略コード
#!encrypt
def main():
ret = os.getenv('__FMZ_ENV__')
# If the print variable ret is the string "encrypt" or ret == "encrypt" is true, that means the encryption is valid.
Log(ret, ret == "encrypt")