void VirtualTral(int Dist_Tral,int Start_Tral,int Magic,int SL)\\здесь у тебя SL - целая, не знаю, какое значение ты сюда посылаешь
{
double dist=Dist_Tral;
double start=Start_Tral;
double sl=SL;//здесь уже дробная, но так как до этого была целая, значит....
if(OrdersTotal()<=0)
ObjectDelete("Stop");
int i, k=OrdersTotal();
for (i=k-1; i>=0; i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if (Bid-NormalizeDouble(OrderOpenPrice(),Digits)>NormalizeDouble(start*Point,Digits))
{
if((NormalizeDouble(Bid-sl*Point,Digits))>(NormalizeDouble(dist*Point,Digits)))//здесь sl подразумевается как отступ от цены, тогда dist должна быть ценой
{
sl=NormalizeDouble(Bid-dist*Point,Digits); //а здесь sl - это уже цена, вполне определенная
//Print(+dist);
//Print(+sl);
ObjectCreate("Stop",OBJ_HLINE,0,D'2013.02.20 12:30',sl); // и здесь, это определенное значение цены
ObjectSet("Stop",OBJPROP_STYLE,1);
ObjectMove("Stop",0,D'2013.02.20 12:30',sl);
それでも注文を締め切らないのは、どうかと思う。 経験不足で見つけられない私の欠点ばかりのようです。
把握できない。よし、もう代案を見つけたぞ。:)MTSにSLやTPなしでトレードをさせ、潜在的な利益がXより大きい場合はすべてクローズさせる。このような方法で注文をクローズすることは可能ですか? このように注文を記録しておく必要があるのでしょうか?
関数は分数なのか、それとも分数であってはいけないのか?
新年あけましておめでとうございます。一杯飲んで、汗をかかないように!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!:-)
それでも注文は締め切られないので、私は好きではありません。
経験不足で見つけられない自分の欠点があるようです。
教祖様、どこへ行かれるのですか...。?...:-)) 気でも狂ったのか.
祈る群衆がいる、どこに行けばいいのかわからない、足元がおぼつかない......。:-)))
関数は分数なのか、それとも分数であってはいけないのか?
なぜdistは価格でなければなりませんか? 私は入札と提供の差をカウントし、距離とこのデルタを比較し、それがより多くの場合、それはストップを引き上げる必要があるため、私は正確に障害がどこにあるか理解していないのですか?
数字でやってみよう
if((NormalizeDouble(Bid-sl*Point,Digits))>(NormalizeDouble(dist*Point,Digits))
仮にBidが1.3333、slが100、distが20だとすると
1.3333-100 * 0.0001=1.3233 であり、常に 20 * 0.0001 = 0.02 よりも大きい。
使い勝手について、もっといい質問があります。グラフは左右にスクロールできるほか、スクイーズやストレッチも可能です。しかし、上下にスクロールするにはどうしたらいいのでしょうか?
解ったのは、
で、チャートをマウスで上下にドラッグできることです。
親愛なるトレーダー - プログラマーの皆様、ご協力ありがとうございました。:)
MQL4でパーセンテージを計算する方法を教えてください。
例えば、x=10+3% のような場合、プログラム的にどう書けばいいのでしょうか?
参考書にも載っていない。