double bid =MarketInfo(symbol,MODE_BID); // Запрос значения Bid double ask =MarketInfo(symbol,MODE_ASK); // Запрос значения Ask double point =MarketInfo(symbol,MODE_POINT);//Запрос Point double value =MarketInfo(OrderSymbol(), MODE_TICKVALUE);// Размер минимального изменения цены инструмента в валюте депозита double stoplevel = MarketInfo(symbol,MODE_STOPLEVEL); double digits = MarketInfo(symbol,MODE_DIGITS);
double bid =MarketInfo(symbol,MODE_BID); // Запрос значения Bid double ask =MarketInfo(symbol,MODE_ASK); // Запрос значения Ask double point =MarketInfo(symbol,MODE_POINT);//Запрос Point double value =MarketInfo(OrderSymbol(), MODE_TICKVALUE);// Размер минимального изменения цены инструмента в валюте депозита double stoplevel = MarketInfo(symbol,MODE_STOPLEVEL); double digits = MarketInfo(symbol,MODE_DIGITS);
チャートファースト
クライアント端末の先頭チャートの識別子を返します。
一番左のグラフと理解しています
残念ながらそうではなく、簡単に確認することができます。
1. ターミナルで2-3通貨ペアを開く
2.コードを実行して確認する。
そうではないと漠然と考えています。明日、これから仕事なので、また書き込みます。
どなたかご存知の方、マイナスゾーンで取引している場合、オープンオーダーのTakeProfitをマイナスゾーンに修正することは可能でしょうか?
回答を待っている間に、いろいろ調べて作ってみました。 正しく表示されるでしょうか? 日曜日なので、夜中まで待っても正しく書けたかどうかわからないと困るのですが。
symbol = Symbol();
double bid =MarketInfo(symbol,MODE_BID); // Запрос значения Bid
double ask =MarketInfo(symbol,MODE_ASK); // Запрос значения Ask
double point =MarketInfo(symbol,MODE_POINT);//Запрос Point
double value =MarketInfo(OrderSymbol(), MODE_TICKVALUE);// Размер минимального изменения цены инструмента в валюте депозита
double stoplevel = MarketInfo(symbol,MODE_STOPLEVEL);
double digits = MarketInfo(symbol,MODE_DIGITS);
if( bid<= stoploss1||step1 == 0)
{
step1++;
stoplevel= NormalizeDouble(stoplevel*point,digits);
stoploss1 = ask-stoplevel;
takeprofit1 = ask+stoplevel;
double profit =0.5;
double takeprofit2= profit * point * value * lot1 + bid;
takeprofit2 = NormalizeDouble(takeprofit2,digits);
if (takeprofit2 > takeprofit1)
takeprofit1 = takeprofit2;
回答を待っている間に、検索して見つけたので作ってみました。 正しく表示されるでしょうか? 日曜日なので、夜中まで待っても正しく書けたかどうかわからないのが嫌なのですが。
symbol = Symbol();
double bid =MarketInfo(symbol,MODE_BID); // Запрос значения Bid
double ask =MarketInfo(symbol,MODE_ASK); // Запрос значения Ask
double point =MarketInfo(symbol,MODE_POINT);//Запрос Point
double value =MarketInfo(OrderSymbol(), MODE_TICKVALUE);// Размер минимального изменения цены инструмента в валюте депозита
double stoplevel = MarketInfo(symbol,MODE_STOPLEVEL);
double digits = MarketInfo(symbol,MODE_DIGITS);
if( bid<= stoploss1||step1 == 0)
{
step1++;
stoplevel= NormalizeDouble(stoplevel*point,digits);
stoploss1 = ask-stoplevel;
takeprofit1 = ask+stoplevel;
double profit =0.5;
double takeprofit2= profit * point * value * lot1 + bid;
takeprofit2 = NormalizeDouble(takeprofit2,digits);
if (takeprofit2 > takeprofit1)
takeprofit1 = takeprofit2;
もっと簡単じゃないですか?
.
このプログラムは、取引だけでなく、履歴分析にも使用する予定です。 必要なパラメータの注文が、ある期間にどれだけオープンされていたかを計算する必要があります。
https://www.mql5.com/ru/forum/351
.