[舉手] 請問MT4的OrderSend函數SL/TP設定
各位版大好
想請問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
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.250.176.113
※ 文章網址: https://www.ptt.cc/bbs/ForeignEX/M.1536845648.A.D79.html
→
09/13 21:39,
7年前
, 1F
09/13 21:39, 1F
推
09/14 02:50,
7年前
, 2F
09/14 02:50, 2F
→
09/14 15:28,
7年前
, 3F
09/14 15:28, 3F
推
09/14 16:15,
7年前
, 4F
09/14 16:15, 4F
→
09/14 20:39,
7年前
, 5F
09/14 20:39, 5F
→
09/14 20:39,
7年前
, 6F
09/14 20:39, 6F
→
09/14 20:40,
7年前
, 7F
09/14 20:40, 7F
→
09/14 20:40,
7年前
, 8F
09/14 20:40, 8F
→
09/14 20:41,
7年前
, 9F
09/14 20:41, 9F
回覆: 有Print過,沒Error, 回測OrderSend沒問題,只是停損掛不上去(TP可以)
換另外一組自訂的double就可以,也就是文中的三均線
參數我用NULL, Symbol(), _Symbol Print都沒錯,但就是不能掛 QQ
最後解法如下:
mktifH=iMA(NULL,1440,1,0,MODE_SMA,PRICE_HIGH,0);
//NormalizeDouble(MarketInfo(Symbol(),MODE_HIGH),6); // 今日高
mktifL=iMA(NULL,1440,1,0,MODE_SMA,PRICE_LOW,0);
//NormalizeDouble(MarketInfo(Symbol(),MODE_LOW),6); // 今日低
有成功掛上,但還是很納悶中間的邏輯到底是什麼 @ @
另外n33222之前PO的模板對新手幫助很多,我都是用您的改的,在此感謝。
※ 編輯: yinzhiping (49.218.115.104), 09/14/2018 23:43:49
推
09/15 00:53,
7年前
, 10F
09/15 00:53, 10F
ForeignEX 近期熱門文章
PTT職涯區 即時熱門文章
20
35