各位版大好
想請問MT4的新手問題,反覆測試仍無解
1. 原本想達到的效果:
買單送出,停損掛日K低點,賣單掛日K高點
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,mktifL,Ask+tp*Point,"",56,0,Blue);
其中第6,第7個參數分別是 6.停損 7.停利
2. 目前作法及矛盾點:
目前是用在OnTick()裡面設的double mktifH, mktifL自設變數 :
mktifH=NormalizeDouble(MarketInfo(NULL,MODE_HIGH),5); // 今日高
mktifL=NormalizeDouble(MarketInfo(NULL,MODE_LOW),5); // 今日低
但跑EA就是SL掛不上去不知道為什麼(無論有無標準化位數都一樣)
另外用了自設變數測試就可以, 下面的MA31max, MA31med, MA31min (一樣double)
不知道為什麼這樣就可以,剛剛就不行,完全不明白中間的邏輯
MaList[0]=ma5d;
MaList[1]=ma10d;
MaList[2]=ma20d;
ArraySort(MaList,WHOLE_ARRAY,0,MODE_DESCEND);
MA31max=MaList[0];
MA31med=MaList[1];
MA31min=MaList[2];
3. 要問的問題:
1)為什麼會這樣 哭哭
2)追加:如果我在OrderSend以後馬上用OrderSelect OrderModify改sl tp
是有辦法辦到的嗎?
因為假設單一多用for迴圈找就麻煩多了
剛接觸,遇到無數瓶頸
懇請各位版上先進技術指導
大感謝 T T