奇狐社區論壇
在這個頁面顯示本主題全部的 8 個文章

奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 當時前推1小時 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=18284)


由 N122562663 在 2014-01-17 13:02 發表:

當時前推1小時

總版主您好:如何才能在
作多過程中、當時前推1小時的最高價起算、最低價有壓回、至最高價-20點、顯示數字。
作空過程中、當時前推1小時的最低價起算、最高價有反彈、至最低價+20點、顯示數字。
請公式支援、急救、謝謝您。


由 cgjj 在 2014-01-17 13:28 發表:

回覆: 當時前推1小時

引用:
最初由 N122562663 發表
總版主您好:如何才能在
作多過程中、當時前推1小時的最高價起算、最低價有壓回、至最高價-20點、顯示數字。
作空過程中、當時前推1小時的最低價起算、最高價有反彈、至最低價+20點、顯示數字。
請公式支援、急救、謝謝您。



僅從文字看不懂您要算什麼?
請做圖解說, 謝謝


由 N122562663 在 2014-01-17 13:59 發表:

2014.1.17日、今為例

2014.1.17日、今為例、手上有9.15分、8614空單、10點整、最低點為8577起算20點、在往後盤最高點、有反彈至8597點的K棒、我就希望、能顯示文字或最高價、可警示我空單出場、保位住獲利、謝謝您。


由 cgjj 在 2014-01-17 14:19 發表:

回覆: 2014.1.17日、今為例

引用:
最初由 N122562663 發表
2014.1.17日、今為例、手上有9.15分、8614空單、10點整、最低點為8577起算20點、在往後盤最高點、有反彈至8597點的K棒、我就希望、能顯示文字或最高價、可警示我空單出場、保位住獲利、謝謝您。


按您這樣敘述的話:
跟 "當時前推1小時的最高價起算" 沒有任何關係
也跟多訊或空訊進場價是多少也沒有任何關係
作多的部分也並非是 .....(略).. 至最高價-20點

您要的關鍵值求法如下:
LLV(L,barslast(多訊)+1)+20;
HHV(H,barslast(空訊)+1)-20;


由 N122562663 在 2014-01-17 16:36 發表:

套用後無法解決

總版主您好:套用後無法解決、請再支援、謝謝您。

多訊:=AA>1000;
空訊:=AA<-1000;
強出:=TIME>=134500; //K棒週期時間為 13:45:00 時做強制出場(請自行決定更改)
多進:=多訊 and 強出=0 or barpos=0;
空進:=空訊 and 強出=0 or barpos=0;
進場:=多進-空進;
控損:=25; 控利半:=50; 控利全:=100;
進價:=0; CC:=C;
多空:=0; //1.多 -1.空 0.無
進出:C*0 NOAXIS;
持有:=進出;
for i = 1 to datacount do begin
if 多空=0 then begin
多空:=進場[i]*2; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i]; RecOutM:=0;
end else if 多空<>0 then begin
NowDir:=SGN(多空);
if NowDir=-進場[i] or NowDir=-進場[i] then begin
進出[i]:=-NowDir*2; 多空:=-NowDir*2; 進價:=CC[i]; RecOutM:=0;
end else begin
盈虧[i]:=(CC[i]-進價)*NowDir;
if 強出[i] then begin
進出[i]:=NowDir*6; 多空:=0;
end else if 盈虧[i]>=控利半 and RecOutM=0 then begin
進出[i]:=NowDir*3; 多空:=多空-NowDir; RecOutM:=1;
end else if 盈虧[i]>=控利全 then begin
進出[i]:=NowDir*4; 多空:=0;
end else if 盈虧[i]<=-控損 then begin
進出[i]:=NowDir*5; 多空:=0;
end;
end;
end;
持有[i]:=多空; //為該根動作完成後所持有的值
end;
最低值(最低價,上一次條件成立位置(多訊)+1)+20;
最高值(最高價,上一次條件成立位置(空訊)+1)-20;

MX:=最低值(最低價,上一次條件成立位置(進出=1 OR 進出=2)+1)+20;
WX:=最高值(最高價,上一次條件成立位置(進出=-1 OR 進出=-2)+1)-20;
顯示文字(MX,收盤價,'出'),ALIGN,COLORFFFF;


由 cgjj 在 2014-01-17 17:12 發表:

回覆: 套用後無法解決

引用:
最初由 N122562663 發表
總版主您好:套用後無法解決、請再支援、謝謝您。

多訊:=AA>1000;
空訊:=AA<-1000;
強出:=TIME>=134500; //K棒週期時間為 13:45:00 時做強制出場(請自行決定更改)
多進:=多訊 and 強出=0 or barpos=0;
空進:=空訊 and 強出=0 or barpos=0;
進場:=多進-空進;
控損:=25; 控利半:=50; 控利全:=100;
進價:=0; CC:=C;
多空:=0; //1.多 -1.空 0.無
進出:C*0 NOAXIS;
持有:=進出;
for i = 1 to datacount do begin
if 多空=0 then begin
多空:=進場[i]*2; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i]; RecOutM:=0;
end else if 多空<>0 then begin
NowDir:=SGN(多空);
if NowDir=-進場[i] or NowDir=-進場[i] then begin
進出[i]:=-NowDir*2; 多空:=-NowDir*2; 進價:=CC[i]; RecOutM:=0;
end else begin
盈虧[i]:=(CC[i]-進價)*NowDir;
if 強出[i] then begin
進出[i]:=NowDir*6; 多空:=0;
end else if 盈虧[i]>=控利半 and RecOutM=0 then begin
進出[i]:=NowDir*3; 多空:=多空-NowDir; RecOutM:=1;
end else if 盈虧[i]>=控利全 then begin
進出[i]:=NowDir*4; 多空:=0;
end else if 盈虧[i]<=-控損 then begin
進出[i]:=NowDir*5; 多空:=0;
end;
end;
end;
持有[i]:=多空; //為該根動作完成後所持有的值
end;
最低值(最低價,上一次條件成立位置(多訊)+1)+20;
最高值(最高價,上一次條件成立位置(空訊)+1)-20;

MX:=最低值(最低價,上一次條件成立位置(進出=1 OR 進出=2)+1)+20;
WX:=最高值(最高價,上一次條件成立位置(進出=-1 OR 進出=-2)+1)-20;
顯示文字(MX,收盤價,'出'),ALIGN,COLORFFFF;



答案就在您寫的這兩行呀:
MX:=最低值(最低價,上一次條件成立位置(進出=1 OR 進出=2)+1)+20;
WX:=最高值(最高價,上一次條件成立位置(進出=-1 OR 進出=-2)+1)-20;

MX 與 WX 就是您要的數值
它們是會隨K棒變動的值, 所以是曲線
既然是曲線, 就不合適用 DRAWTEXT 來顯示

改成以下這樣, 就可隨時查看數值
MX:最低值(最低價,上一次條件成立位置(進出=1 OR 進出=2)+1)+20 linethick;
WX:最高值(最高價,上一次條件成立位置(進出=-1 OR 進出=-2)+1)-20 linethick;

下面這兩行是多餘的, 不需再置入: (會取到整併前的訊號結果)
最低值(最低價,上一次條件成立位置(多訊)+1)+20;
最高值(最高價,上一次條件成立位置(空訊)+1)-20;


由 N122562663 在 2014-01-17 20:07 發表:

WX

總版主您好:
WX所出現的值是8604、跟我想要的結果、好像沒任何關係、應是我沒說清楚所需內容、煩請再看一次我從新訴的內容如下、
2014.1.17日、今為例、手上有9.15分、8614空單、10點整、今天最低點已來到8577起算點、盤往後在11點.03分K棒最高點是8602、已由8577起算點、反彈、大於8597點《8577起算反彈20點就是8597》我想要在、11點.03分K棒、能顯示文字、謝謝您。


由 cgjj 在 2014-01-20 09:58 發表:

回覆: WX

引用:
最初由 N122562663 發表
總版主您好:
WX所出現的值是8604、跟我想要的結果、好像沒任何關係、應是我沒說清楚所需內容、煩請再看一次我從新訴的內容如下、
2014.1.17日、今為例、手上有9.15分、8614空單、10點整、今天最低點已來到8577起算點、盤往後在11點.03分K棒最高點是8602、已由8577起算點、反彈、大於8597點《8577起算反彈20點就是8597》我想要在、11點.03分K棒、能顯示文字、謝謝您。



改這樣試試
MX:最低值(最低價,上一次條件成立位置(進出=-1 OR 進出=-2)+1)+20 linethick;
WX:最高值(最高價,上一次條件成立位置(進出=1 OR 進出=2)+1)-20 linethick;
H>MX; //此為空回檔顯示文字條件
L<WK; //此為多回檔顯示文字條件


全部時間均為台灣時間, 現在時間為17:10
在這個頁面顯示本主題全部的 8 個文章


Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.