isaaclo 發表於 15-5-14 15:48

語法疑問,新參考訊號

想詢問前輩架構上的問題
請問這需要用到迴圈嗎
條件一:k棒實體>40 參考價位 ,為基準買賣訊號條件二:出現新k棒且實體>40為新參考價位,但需於5根k後才生效

if Body >40 then begin
value1:close
end;

if close >value1 then begin
buy ("buy")this bar at close;

後續就不知如何接到新參考價位了
好像怎麼寫都無法參照新價位
使用過記錄buy 當下的BarNumber 後推5根
也使用過barssinceentry=5 來算
怎麼試好像都有問題,無法正常顯示訊號
請問前輩這個有辦法寫嗎還是說一定要用迴圈的方式呢





沒房子的阿捨 發表於 15-5-14 16:38

應該不用迴圈吧

按你的條件分開敘述, 看看這樣是否可行:
if marketposition=0 and Body>40 then value1=close;
if marketposition<>0 and Body>40 and barssinceentry>5 then value1=close;

isaaclo 發表於 15-5-14 17:42

感謝阿捨兄
剛加入判斷好像還有些問題
懷疑是買賣訊號問題
我先試試好了
謝謝

isaaclo 發表於 15-5-14 22:32

看起來已經OK了 感恩~
邏輯不是很好,想好久搞好久
真的十分感謝

isaaclo 發表於 15-5-18 09:50

本帖最後由 isaaclo 於 15-5-18 09:57 編輯

前輩後來自己在寫好像都有些問題
請問是否能再幫我看一下,感謝…
小弟邏輯不是很好,自行改了又改好像還是有問題

以之前前輩提供的方法做個開始的條件設定
抓出基本的價位與生效日的價位
if
marketposition=0and
Body>40
then begin
value1=high;
value2=low+10;
value3=barnumber;
end;
ifmarketposition<>0 and Body>40 and barssinceentry>5
then begin
value1=high;
value2=low+10;
value3=barnumber;
end;


這邊是買賣的訊號不是否有邏輯上的錯誤
訊號好像都不甚正確


if marketposition=0and high >value1   and (barssinceentry>5 or kbar=5)
then begin
buy ("Buy")this bar at close;
end;

買方反手
if marketposition=1and low <value2   and (barssinceentry>5 or kbar=5)
then begin
Sell this bar at close;
sellshort ("bh_s")this bar at close;
end;


if marketposition=0and low <value2    and (barssinceentry>5 or kbar=5)
then begin
sellshort ("short")this bar at close;
end;
空方反手
if marketposition=-1 and high >value1and   (barssinceentry>5 or kbar=5)
then begin
buytocover this bar at close;
buy ("BH_b")this bar at close;
end;

會出現附圖中以下情況
明明還未打到前根關鍵low
就bh_s反手了…




沒房子的阿捨 發表於 15-5-18 13:17

本帖最後由 沒房子的阿捨 於 15-5-18 13:18 編輯

依你的條件,
(1)value2=low+10;
(2)買方反手 low < value2
看起來 low < low+10一定成立.........好像怪怪的~XD

若是要看當根K是否收破 low +10
試試看將 low<value2 改成 close < value2

isaaclo 發表於 15-5-18 13:33

本帖最後由 isaaclo 於 15-5-18 14:12 編輯

阿捨兄 我原本的用意是要以現在的最低價
是否收破上次的關鍵低價
但以線圖來看不是每次這種奇怪的情況都成立而是有時會出現…真的很怪
我再來試試COLSE看看謝謝

沒房子的阿捨 發表於 15-5-18 14:37

上次的關鍵價, 應該是上一根K的low+10吧?!

那試試用value2 = low+10

isaaclo 發表於 15-5-18 15:22

不知道是不是誤會用法了
我原以為是
kbar>40 條件成立時存value2=low+10
再以每日的low去比這個值看是否比較小,小的話做空
但若用low的話會不會抓到kbar>40 的前一根k棒呢?

沒房子的阿捨 發表於 15-5-18 17:43

你的判斷式可能會讓value2的值被當天low+10蓋過哦~

isaaclo 發表於 15-5-18 20:44

驚…我原本來懷疑這樣…
我在判斷式加上low試試
感謝阿捨兄耐心的回復{:4_186:}

沒房子的阿捨 發表於 15-5-18 23:56

別客氣~我也還在學阿~哈
頁: [1]
查看完整版本: 語法疑問,新參考訊號