オープンプロジェクト - テスタ・オプティマイザを自社開発 - ページ 3 1234567 新しいコメント Forex Trader 2005.03.01 17:45 #21 ソースコードをここに掲載しました -http://forexsystems.ru/phpBB/viewtopic.php?p=4379#4379 削除せざるを得なかったコメントを見ることができます。 TradeOrdersArray、ClosedOrdersArray 配列の目的については、そちらに記述しています。そして、もう少し。 Forex Trader 2005.03.01 19:32 #22 取引関数OrderSendをオーバーライドした。 CorrectPrice()関数とDrawArrowOnChart()関数は未定義です。 ここに掲載しました -http://forexsystems.ru/phpBB/viewtopic.php?p=4380#4380 init()ブロックからヘッダーにすべての変数をドラッグしなければならなかった - さもなければ変数は見えない。私の最初のミスです。 もうひとつは、関数内のパラメータのデフォルト値をNULLに設定しようとすると、コンパイラが悪態をつくことです。 第三に、コード中に未定義/未定義関数(CorrectPrice()、DrawArrowOnChart() )があってもコンパイラがクラッシュしない。 おそらくそれはNULLにつまずき、それ以上文句を言うことはないでしょう。 関数の定義は愚かなもので、辞書からコピーしたものなので、もし開発者が間違った宣言をしていると私を責めるなら・・・。 //+------------------------------------------------------------------+ //| Redefine OrderSend() function | //+------------------------------------------------------------------+ int fut_OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=[b]NULL[/b],int magic=0, datetime expiration=0, color arrow_color=CLR_NONE) { if (CorrectPrice(symbol,cmd,price,myCurrentTime)) { TradeOrdersArray[myOrdersTotal,0]= symbol; TradeOrdersArray[myOrdersTotal,1]=pool_pos; TradeOrdersArray[myOrdersTotal,2]=myOrderTicket+1; TradeOrdersArray[myOrdersTotal,3]=cmd; TradeOrdersArray[myOrdersTotal,4]=volume; TradeOrdersArray[myOrdersTotal,5]=price; TradeOrdersArray[myOrdersTotal,6]=slippage; TradeOrdersArray[myOrdersTotal,7]=stoploss; TradeOrdersArray[myOrdersTotal,8]=stoploss; TradeOrdersArray[myOrdersTotal,9]=comment; TradeOrdersArray[myOrdersTotal,10]=magic; TradeOrdersArray[myOrdersTotal,11]=myCurrentTime; DrawArrowOnChart(symbol,myCurrentTime,price,arrow_color); myOrderTicket++; myOrdersTotal++; pool_pos++; return(myOrderTicket); } else return(-1); } 明日、OrderClose()を再定義してみます。そこでテストのアイデアを説明しやすくなると思います。 PS すでに2名の方がダウンロードされているようで、希望が持てます。 Forex Trader 2005.03.01 23:41 #23 削除せざるを得なかったコメントを見ることができます。 Roshさん、このフォーラムでロシア語のテキストを挿入する方法がわかりました(自分で考えないといけないんですけどね :)。 エディターでコードをコピーするときは、ロシア語にしてください。そして、それぞれフォーラムに貼り付ける際も同様です。 そして、すべてのコメントは保存されます ;) Forex Trader 2005.03.02 03:38 #24 レナット、スラバ... ここで、empty演算 子についての議論に良い例を挙げます。 暗黙の型変換は、括弧の後の"; "よりもずっと悪く、危険です。 この場合、明示的なエラーは発生しますが、コンパイラは警告すら発生させません。 ロッシュ と表示され、再びページが消えました。 Forex Trader 2005.03.02 07:07 #25 もうひと頑張り。 int fut_OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE) { if (CorrectPrice(symbol,cmd,price,myCurrentTime)) { TradeOrdersArray[myOrdersTotal,0]= symbol;// записали иструмент TradeOrdersArray[myOrdersTotal,1]=pool_pos;// записали номер в списке терминала TradeOrdersArray[myOrdersTotal,2]=myOrderTicket+1;// записали номер тикета у брокера TradeOrdersArray[myOrdersTotal,3]=cmd;// записали тип ордера TradeOrdersArray[myOrdersTotal,4]=volume;// записали размер ордера TradeOrdersArray[myOrdersTotal,5]=price;// записали цену открытия TradeOrdersArray[myOrdersTotal,6]=slippage;// записали проскальзывание в пунктах TradeOrdersArray[myOrdersTotal,7]=stoploss;// записали stoploss TradeOrdersArray[myOrdersTotal,8]=stoploss;// записали takeprofit TradeOrdersArray[myOrdersTotal,9]=comment;// записали комментарии TradeOrdersArray[myOrdersTotal,10]=magic;// записали MagicNumber TradeOrdersArray[myOrdersTotal,11]=myCurrentTime;// записали дату выставления/открытия ордера DrawArrowOnChart(symbol,myCurrentTime,price,arrow_color); myOrderTicket++; myOrdersTotal++; pool_pos++; return(myOrderTicket); } else return(-1); } //+------------------------------------------------------------------+ Forex Trader 2005.03.02 09:08 #26 本文中に重大な間違いがあります。 Forex Trader 2005.03.02 10:58 #27 Makさん、ありがとうございます。簡潔は才能の姉妹である。 Forex Trader 2005.03.02 11:28 #28 ロッシュ ただ、レナトには自分で見て、エラーを発見してほしかったんです。 でも、ここを見ていないのか、私の投稿をバカにしているようです。 (引用 - 「くだらない質問には答えない」 - :)) MQL構文(および/またはコンパイラ)のデメリットというテーマで書いています。 コンパイラは、このエラーについて警告することはできても、対応することはできません。 私なら単純に、そのようなエラーを言語で禁止する(暗黙の型変換)。 具体的に言うと TradeOrdersArray 配列はdouble 型 である。 何カ所か、文字列の値を割り当てていますね。 例えば、こんな感じです。 TradeOrdersArray[myOrdersTotal,0]= symbol; コンパイラはそれを全部食べてしまうし、テスターだって動くけど、あなたが望んだようには動かない。 ましてや、1ヶ月前のものであれば、そのようなミスを探すのは大変です。 で、今日、プログラムに数行追加して初めて表示されました。 (Plz., fix the script - page is gone, it's not convenient to look.). Open project - tester-optimiser Is martin so bad? Useful features from KimIV Forex Trader 2005.03.02 11:37 #29 では、異なる型のデータを格納するための配列はどのように定義すればよいのでしょうか。 この宣言を紹介します。 文字列 comment=NULLの場合、コンパイラはエラーを発生します。 しかし、私はただパターン別に辞書からコピーしているだけです。 Forex Trader 2005.03.02 11:42 #30 異なる型のデータを格納するための配列を定義するにはどうすればよいですか? できないのでは? 2種類のアレイのみ。 1234567 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
削除せざるを得なかったコメントを見ることができます。
TradeOrdersArray、ClosedOrdersArray 配列の目的については、そちらに記述しています。そして、もう少し。
CorrectPrice()関数とDrawArrowOnChart()関数は未定義です。
ここに掲載しました -http://forexsystems.ru/phpBB/viewtopic.php?p=4380#4380
init()ブロックからヘッダーにすべての変数をドラッグしなければならなかった - さもなければ変数は見えない。私の最初のミスです。
もうひとつは、関数内のパラメータのデフォルト値をNULLに設定しようとすると、コンパイラが悪態をつくことです。
第三に、コード中に未定義/未定義関数(CorrectPrice()、DrawArrowOnChart() )があってもコンパイラがクラッシュしない。
おそらくそれはNULLにつまずき、それ以上文句を言うことはないでしょう。
関数の定義は愚かなもので、辞書からコピーしたものなので、もし開発者が間違った宣言をしていると私を責めるなら・・・。
明日、OrderClose()を再定義してみます。そこでテストのアイデアを説明しやすくなると思います。
PS すでに2名の方がダウンロードされているようで、希望が持てます。
Roshさん、このフォーラムでロシア語のテキストを挿入する方法がわかりました(自分で考えないといけないんですけどね :)。
エディターでコードをコピーするときは、ロシア語にしてください。そして、それぞれフォーラムに貼り付ける際も同様です。
そして、すべてのコメントは保存されます ;)
ここで、empty演算 子についての議論に良い例を挙げます。
暗黙の型変換は、括弧の後の"; "よりもずっと悪く、危険です。
この場合、明示的なエラーは発生しますが、コンパイラは警告すら発生させません。
ロッシュ
と表示され、再びページが消えました。
ただ、レナトには自分で見て、エラーを発見してほしかったんです。
でも、ここを見ていないのか、私の投稿をバカにしているようです。
(引用 - 「くだらない質問には答えない」 - :))
MQL構文(および/またはコンパイラ)のデメリットというテーマで書いています。
コンパイラは、このエラーについて警告することはできても、対応することはできません。
私なら単純に、そのようなエラーを言語で禁止する(暗黙の型変換)。
具体的に言うと
TradeOrdersArray 配列はdouble 型 である。
何カ所か、文字列の値を割り当てていますね。
例えば、こんな感じです。
コンパイラはそれを全部食べてしまうし、テスターだって動くけど、あなたが望んだようには動かない。
ましてや、1ヶ月前のものであれば、そのようなミスを探すのは大変です。
で、今日、プログラムに数行追加して初めて表示されました。
(Plz., fix the script - page is gone, it's not convenient to look.).
この宣言を紹介します。
しかし、私はただパターン別に辞書からコピーしているだけです。
できないのでは?
2種類のアレイのみ。