[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 74

 
Figar0 >> :

そもそもこのデザインは何なのか?

ああ、もうわかったよ、テストにかけたんだ。

>>指標値を削除しただけなのは明らかなんですが、何を勘違いしているのでしょうか?

 
1Rakso писал(а)>>

もうわかったんだ、テストに出したんだ。

インジケーターの値を削除しただけなのは明らかなのに、何を勘違いしているのでしょうか。

ただ、それが何なのかがはっきりしない、何を聞かれているのか理解しているのかどうか、どう答えればいいのか?

知らない人は、Bidと何を比べたらいいのか分からないから使っているのかもしれません。正しいのです。

 
anat >> :



例えば、買いポジションがある場合、全ての買いポジションが決済されるまで、売りポジションを建てないという場合、この構文で if(iSAR(NULL,0,step0,0.1,0)<Close[0]) という条件をどのように挿入すればよいか教えていただけませんか?つまり、3つのポジションを買い、3つとも決済されるまで待つというのが1サイクルの取引です。ポジションはストップロスまたはテイクプロフィットによってのみ決済されます。全ポジション決済、シグナル待ち、シグナル取得、3ポジションの買いまたは売り(シグナルによる)、など。KimIVからの便利な機能」を検討しました。関数CountOrders()、ExistOrders()、ExistPositions()を使用することができます。しかし、実際にどのように挿入すればいいのでしょうか?if((iSAR(NULL,0,step0,0.1,0)>Close[0])&& ExistPositions(NULL,OP_SELL)==false) という構成は機能しない。論理変数を挿入する必要があることは理解できましたが、実際にはどのようにすればよいのでしょうか。何かわからないことがある。


スレッド全体を読むすべてのコードを中括弧で囲み、その前に if (OrdersTotal( ) == 0) と書けば解決することがわかりました。粗削りですが、効果はあります。bool 変数を使用して、条件 if (OrdersTotal() >=maxOpen) return で導かれる任意の数の注文を開きたいと思います。
 
anat >> :
支店全部読みました。すべてのコードを中括弧で囲み、その前に if (OrdersTotal( ) == 0) と記述することで解決します。粗削りですが、効果はあります。bool変数を使って、if (OrdersTotal() >=maxOpen) returnの条件に基づいて、任意の数の注文をオープンしたいと思います。

Total_sellとTotal_buyを分離したい場合は、以下の関数を使用してみてください。

int CalculateCurrentOrders(string symbol) from SimpleMACD

int CalculateCurrentOrders(int Type)// OP_BUY , OP_SELL
  {
   int buys=0;
//----
   for(int i=0; i<OrdersTotal(); i++)
     {
      if(OrderSelect( i, SELECT_BY_POS, MODE_TRADES)==false) break;
      if(OrderSymbol()==Symbol() )
        {
         if(OrderType()== Type)  buys++;
        }
     } return( buys);
  }
 
現在のローソクの終値を返す関数を教えてください。
 
Diver-si >> :

戦略ではなく、あくまで前提を確認するためです。ところで、なぜEAがトレードをしないのでしょうか?その理由がわからない。

>> わからない。テスターで動かしたところ、うまくいきました。パラメータを間違えたのでは?あるいは、EAの取引を許可するチェックボックスにチェックを入れていない可能性があります。そして、メジャーTFの時間は分単位で設定されています!つまり、TFUP変数では、m5ではなく5、m30ではなく30、H1ではなく60などを指定する必要があるのです。

 
gmMarat писал(а)>>
現在のローソク足の終値の時刻を返す関数を教えてください。

現在のキャンドルの終値は何時ですか?現在のローソク足がまだ閉じていない、そうでなければもう現在ではない、この時間はおよそTime[0]+Period()*60と仮定することができる

 
Figar0 >> :

現在のキャンドルの終値は何時ですか?現在のローソク足がまだ閉じていない、そうでなければもう現在ではない、この時間はおよそTime[0]+Period()*60と仮定することができる

Figar0 ありがとうございます。

 
1ロット取引で1ピップの値を決めるには?MarketInfo(Symbol(),MODE_LOTSIZE)*Point という式を使うようにアドバイスされましたが、絶対に間違っています!この式は、1ロット取引で1ピップの値を決めるためのものです。USDJPYの場合は100000$*0.001=100$となり、多くのシンボルと同様、実際には1ドルである。
 
Цена 1 пункта для стандартного лота:
 
 double ad.QuotePoint   = MarketInfo ( Symbol () , MODE_POINT     )      ;
double ad.QuoteTick    = MarketInfo ( Symbol () , MODE_TICKSIZE  )      ;
double ad.NominalTick  = MarketInfo ( Symbol () , MODE_TICKVALUE )      ;

double ad.NominalPoint = ad.NominalTick  * ad.QuotePoint / ad.QuoteTick ; // Цена 1 пункта для стандартного лота
Цена 1 пункта для ордера известного размера "ad.OrderSize":

double ad.OrderPoint   = ad.NominalPoint * ad.OrderSize                 ;