COCO研究院

 找回密碼
 註冊
搜索
查看: 3326|回復: 11

[其他程式語言] 請教如何在均線上或下只會進場一次?

[複製鏈接]
發表於 15-10-13 21:42 | 顯示全部樓層 |閱讀模式
請教一下 如果站上均線買一口 ,獲利20點出場,之後不再進場,等到跌破均線放空一口  ..if c > 某均線 then buy next bar at market; setprofittarget ( pointvalue*20);
假使獲利20點後出場 但Close還在均線之後,寫成上式的話因此又會繼續買進,請問如何可以在均線上只做一次交易呢

發表於 15-10-13 23:08 | 顯示全部樓層
均線的站上或跌破都不能做為進場依據,短線長線都是,
它只是輔助
 樓主| 發表於 15-10-13 23:22 | 顯示全部樓層
if marketposition=0 and c> 某均線 and k1=0 then begin
buy next bar at market;
k1=1;
end;

~~~~~~~~~~~~~~~~~`
這樣寫不知道哪裡錯
發表於 15-10-14 00:38 | 顯示全部樓層
你原來方式 K1  = 1 以後 , 要使用
if Close < Average(Close N)  then begin
    sellshort next bar at market ;
    K1 = 0 ;
end ;
如此回到均線上才會作多
----------------------------------------------------

使用Cross 的方式 , 就可避免

if marketposition <> 1 and Close cross over Average(Close, N) then buy next bar at Market ;
if marketposition <> -1 and  Close cross under Average(Close,N) then Sellshort next bar at Market ;

評分

參與人數 1金錢 +2 收起 理由
glaxo + 2 感謝分享

查看全部評分

發表於 15-10-14 00:40 | 顯示全部樓層
你的邏輯基本上進出場應該都是一多一空,所以可以寫成
if marketposition(1)=-1 and c>某均線 then  buy next bar at market;
if marketposition(1)=1 and c<某均線 then  sellshrot next bar at market;

基本上就一定只會多空各一次

若要更精準控制,還是有其他方法,只是簡單的話可以這樣寫

評分

參與人數 1金錢 +2 收起 理由
glaxo + 2 太強了

查看全部評分

 樓主| 發表於 15-10-14 08:36 | 顯示全部樓層
blj0511 發表於 15-10-14 00:40
你的邏輯基本上進出場應該都是一多一空,所以可以寫成
if marketposition(1)=-1 and c>某均線 then  buy nex ...

感恩啊~~我先來試試!
 樓主| 發表於 15-10-14 11:34 | 顯示全部樓層
if marketposition(1)=-1 and c>某均線 then  buy next bar at market;
if marketposition(1)=1 and c<某均線 then  sellshrot next bar at market;
~~~~~~~~~~~~~~~~~
上述的寫法是不是沒有起始艙位?

我試著寫

k1=1;
if close > 某均線 then begin
buy next bar at market;
k1=0;
end;

if close < 某均線 and k1=0 then begin
sell next bar at market;
k1=1;
end;

setprofittarget ( pointvalue*dd);
發表於 15-10-14 12:07 | 顯示全部樓層
glaxo 發表於 15-10-14 11:34
if marketposition(1)=-1 and c>某均線 then  buy next bar at market;
if marketposition(1)=1 and c 某均 ...

easytrader788大正解阿!!
使用 Cross 最簡單
穿價時才會執行指令


加上停利範例如下
inputs: Stopprofit(6000);//30點停利
if marketposition <> 1 and Close cross over Average(Close, X) then buy next bar at Market ;//X=均線長度
if marketposition <> -1 and  Close cross under Average(Close,X) then Sellshort next bar at Market ;
setprofittarget( Stopprofit );


補充 盤整正負30點內 會被巴到死...

評分

參與人數 1金錢 +2 收起 理由
glaxo + 2 太強了

查看全部評分

 樓主| 發表於 15-10-14 12:50 | 顯示全部樓層
noxzx 發表於 15-10-14 12:07
easytrader788大正解阿!!
使用 Cross 最簡單
穿價時才會執行指令

請問這樣寫繪有起始倉位嗎?
發表於 15-10-14 13:25 | 顯示全部樓層
glaxo 發表於 15-10-14 12:50
請問這樣寫繪有起始倉位嗎?

請問G大起始倉位的意思是?

上述程式碼 中文解釋是
持有部位不為多單時 可建立多單
持有部位不為空單時 可建立空單

如果你設定倉位經紀商同步
不管你起始有沒有部位
他都會依照邏輯執行(異步就會依照你的倉位 +1 or -1)

評分

參與人數 1金錢 +2 收起 理由
glaxo + 2 太強了

查看全部評分

 樓主| 發表於 15-10-14 13:36 | 顯示全部樓層
ㄚㄚ....一語驚醒夢中人.... d1356224.jpg

評分

參與人數 1金錢 +1 收起 理由
noxzx + 1 妹紙不錯!!

查看全部評分

發表於 15-10-14 21:22 | 顯示全部樓層
glaxo 發表於 15-10-14 11:34
if marketposition(1)=-1 and c>某均線 then  buy next bar at market;
if marketposition(1)=1 and c 某均 ...

有些情形可以使用如下方式告訴軟體 ,我已經各買賣一次了 {建立起始倉位}

if BarNumber = 1 then begin
  Buy this bar at close ;
  Sellshort this bar at close ;
end ;



您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-11-25 04:07

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |