どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 756 1...749750751752753754755756757758759760761762763...1178 新しいコメント Карпутов Владимир 2014.10.26 06:46 #7551 ssn1: 私は自分のアーカイブシステムに慣れています。 PCのハードディスク破壊、ノートPCの故障など、すでにKeeperで無事に乗り切っています。そして、私のコードは1バイトも失われていないのです。Vaultは便利です。 vskh 2014.10.26 08:25 #7552 こんにちは。運動プログラムを書きました。なぜかうまくいかない。9月29日から10月15日の間にストラテジーテスターでテストしてみました。このプログラムは次のように機能するはずです:私は買い物をする。0.010まで下がったら、損切りして売るべきです。買いが発生する。販売はしていません。ビジュアライゼーションを始めると、0.010だけでなく、もっと高い価格になっていることがわかります。不思議ですね。// -------- 変数 --- 開始 ----- extern double L1=0.01; // 買いのロットサイズ extern double L1n=0.01; // 買いのロットサイズ(正規化ロット) extern double AktualAsk=0.0; // 現在のビッド価格 extern double AktualBid=0.0; // 実際の販売価格 extern int int ticketlackmus=1; // 注文の開始が成功した場合の指標。 extern int int ticket1=0; // チケット extern bool PozOtk1=true;// -------- 変数 --- End -------- int init() { return(0)です。} int start() { if (PozOtk1==true) { //オープンポジション ticketlackmus=1です。 while (ticketlackmus>0){ アラート(" Open first position "); RefreshRates()。// データを更新する AktualAsk=NormalizeDouble(Ask,Digits); //価格用 L1n=NormalizeDouble(L1,2); //ロット用です。 ticket1=OrderSend ("GBPUSD", OP_BUY, L1n, AktualAsk, 5, 0, 0, 0,CLR_NONE); if (ticket1>0) ticketlackmus=-1;{ アラート(" ORDER OPEN ", ticket1, ", ticketlackmus)を表示します。}} PozOtk1=false。 Alert (" PozOtk1 ", PozOtk1);} RefreshRates()。// RefreshRates() AktualBid=NormalizeDouble(Bid,Digits);//価格用 if (AktualBid<=AktualAsk-0.010 && PozOtk1==false)。{ RefreshRates(); // データをリフレッシュする オーダーセレクト(ticket1, SELECT_BY_TICKET;) L1n=NormalizeDouble(L1,2); //ロット分 OrderClose (ticket1, L1n, AktualBid, 5)です。 PozOtk1=trueとした。 } return(0)です。} int deinit(){ return(0)です。} オゼロ。 Any rookie question, so コーディングの方法は? [アーカイブ!】アドバイザーの書き方を無料公開中 Карпутов Владимир 2014.10.26 08:53 #7553 コードを挿入する際は、マジックSRC ボタンをご使用ください。フォーラムでコードを正しく挿入 する vskh 2014.10.26 09:40 #7554 // -------- переменные --- Н ----- extern double L1=0.01; // размер лота для покупки extern double L1n=0.01; // размер лота для покупки extern double AktualAsk=0.0; extern double AktualBid=0.0; extern int ticketlackmus=1; // "лакмусовая бумажка" успешности откарытия ордера extern int ticket1=0; // тикет extern bool PozOtk1=true; // -------- переменные --- К ----- int init() { return(0); } int start() { if (PozOtk1==true) { // Открытие позиции ticketlackmus=1; while (ticketlackmus>0) { Alert (" Открытие первой позиции "); RefreshRates(); // Обновление данных AktualAsk=NormalizeDouble(Ask,Digits); //для цены L1n=NormalizeDouble(L1,2); //для лота. ticket1=OrderSend ("GBPUSD", OP_BUY, L1n, AktualAsk, 5, 0, 0, 0, 0, CLR_NONE); if (ticket1>0) ticketlackmus=-1; { Alert (" ОРДЕР ОТКРЫТ ", ticket1, " ", ticketlackmus); } } PozOtk1=false; Alert (" PozOtk1 ", PozOtk1); } RefreshRates(); // Обновление данных AktualBid=NormalizeDouble(Bid,Digits); //для цены if (AktualBid<=AktualAsk-0.010 && PozOtk1==false) { RefreshRates(); // Обновление данных OrderSelect(ticket1, SELECT_BY_TICKET); L1n=NormalizeDouble(L1,2); //для лота OrderClose (ticket1, L1n, AktualBid, 5); PozOtk1=true; } return(0); } int deinit() { return(0); } Vitalie Postolache 2014.10.26 10:42 #7555 もしポジションが特定のシンボル(この場合は"GBPUSD")で開かれるなら、マーケットインフォを通じてこのシンボルのすべてのデータを取ることをお勧め します、つまり、 AktualAsk=NormalizeDouble(Ask,Digits);aktualAsk=MarketInfo( "GBPUSD",MODE_ASK);そうして、どんな市場データも、避けるために、取らなければならない。 vskh 2014.10.26 12:30 #7556 // -------- переменные --- Н ----- extern double L1=0.01; // размер лота для покупки extern double L1n=0.01; // размер лота для покупки extern double AktualAsk=0.0; extern double AktualBid=0.0; extern int ticketlackmus=1; // "лакмусовая бумажка" успешности откарытия ордера extern int ticket1=0; // тикет extern bool PozOtk1=true; // -------- переменные --- К ----- int init() { return(0); } int start() { if (PozOtk1==true) { // Открытие позиции ticketlackmus=1; while (ticketlackmus>0) { Alert (" Открытие первой позиции "); RefreshRates(); // Обновление данных //AktualAsk=NormalizeDouble(Ask,Digits); //для цены AktualAsk=MarketInfo( "GBPUSD",MODE_ASK); L1n=NormalizeDouble(L1,2); //для лота. ticket1=OrderSend ("GBPUSD", OP_BUY, L1n, AktualAsk, 5, 0, 0, 0, 0, CLR_NONE); if (ticket1>0) ticketlackmus=-1; { Alert (" ОРДЕР ОТКРЫТ ", ticket1, " ", ticketlackmus); } } PozOtk1=false; Alert (" PozOtk1 ", PozOtk1); } RefreshRates(); // Обновление данных AktualBid=NormalizeDouble(Bid,Digits); //для цены if (AktualBid>=AktualAsk+0.010 && PozOtk1==false) { RefreshRates(); // Обновление данных OrderSelect(ticket1, SELECT_BY_TICKET); L1n=NormalizeDouble(L1,2); //для лота OrderClose (ticket1, L1n, AktualBid, 5); PozOtk1=true; } return(0); } int deinit() { return(0); } evillive:もしポジションが特定のシンボル(この場合、"GBPUSD")でオープンした場合、マーケットインフォを通じてこのシンボルのすべてのデータを取得することをお勧め します。そうして、どんな市場データも、避けるために、取らなければならない。Evilliveありがとうございます。 変更を加えました。でも、もう買い始めています。変更後の販売はありません。2014年9月30日~10月中旬のM15テスト。 Victor Nikolaev 2014.10.26 12:52 #7557 Ozero:Evilliveさん、ありがとうございます。 変更を行った。しかし、とにかく購入は進んでいた。変更後、販売は行われません。2014年9月30日から10月中旬までM15テスト。 上記のコードの中で、セールが行われそうな箇所を探す vskh 2014.10.26 14:12 #7558 OrderClose (ticket1, L1n, AktualBid, 5); Victor Nikolaev 2014.10.26 14:35 #7559 Ozero: これで注文は終了です。売り注文の 開始位置はどこですか。上記のコードにはありません vskh 2014.10.26 14:40 #7560 注文が成立しないという意味です :( 初心者なので、言い方が悪かったらすみません。 1...749750751752753754755756757758759760761762763...1178 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
私は自分のアーカイブシステムに慣れています。
こんにちは。
運動プログラムを書きました。なぜかうまくいかない。
9月29日から10月15日の間にストラテジーテスターでテストしてみました。
このプログラムは次のように機能するはずです:私は買い物をする。0.010まで下がったら、損切りして売るべきです。
買いが発生する。販売はしていません。ビジュアライゼーションを始めると、0.010だけでなく、もっと高い価格になっていることがわかります。不思議ですね。
// -------- 変数 --- 開始 -----
extern double L1=0.01; // 買いのロットサイズ
extern double L1n=0.01; // 買いのロットサイズ(正規化ロット)
extern double AktualAsk=0.0; // 現在のビッド価格
extern double AktualBid=0.0; // 実際の販売価格
extern int int ticketlackmus=1; // 注文の開始が成功した場合の指標。
extern int int ticket1=0; // チケット
extern bool PozOtk1=true;
// -------- 変数 --- End --------
int init()
{
return(0)です。
}
int start()
{
if (PozOtk1==true)
{
//オープンポジション
ticketlackmus=1です。
while (ticketlackmus>0)
{
アラート(" Open first position ");
RefreshRates()。// データを更新する
AktualAsk=NormalizeDouble(Ask,Digits); //価格用
L1n=NormalizeDouble(L1,2); //ロット用です。
ticket1=OrderSend ("GBPUSD", OP_BUY, L1n, AktualAsk, 5, 0, 0, 0,CLR_NONE);
if (ticket1>0) ticketlackmus=-1;
{
アラート(" ORDER OPEN ", ticket1, ", ticketlackmus)を表示します。
}
}
PozOtk1=false。
Alert (" PozOtk1 ", PozOtk1);
}
RefreshRates()。// RefreshRates()
AktualBid=NormalizeDouble(Bid,Digits);//価格用
if (AktualBid<=AktualAsk-0.010 && PozOtk1==false)。
{
RefreshRates(); // データをリフレッシュする
オーダーセレクト(ticket1, SELECT_BY_TICKET;)
L1n=NormalizeDouble(L1,2); //ロット分
OrderClose (ticket1, L1n, AktualBid, 5)です。
PozOtk1=trueとした。
}
return(0)です。
}
int deinit()
{
return(0)です。
}
オゼロ。
コードを挿入する際は、マジックSRC ボタンをご使用ください。
フォーラムでコードを正しく挿入 する
もしポジションが特定のシンボル(この場合は"GBPUSD")で開かれるなら、マーケットインフォを通じてこのシンボルのすべてのデータを取ることをお勧め します、つまり、 AktualAsk=NormalizeDouble(Ask,Digits);aktualAsk=MarketInfo( "GBPUSD",MODE_ASK);
そうして、どんな市場データも、避けるために、取らなければならない。
もしポジションが特定のシンボル(この場合、"GBPUSD")でオープンした場合、マーケットインフォを通じてこのシンボルのすべてのデータを取得することをお勧め します。
そうして、どんな市場データも、避けるために、取らなければならない。
Evilliveありがとうございます。
変更を加えました。でも、もう買い始めています。変更後の販売はありません。2014年9月30日~10月中旬のM15テスト。
Evilliveさん、ありがとうございます。
変更を行った。しかし、とにかく購入は進んでいた。変更後、販売は行われません。2014年9月30日から10月中旬までM15テスト。
OrderClose (ticket1, L1n, AktualBid, 5);