![]() |
在這個頁面顯示本主題全部的 14 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 請問語法 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=12828)
請問語法
請問奇狐的
else
if XXXX then begin
可否直接不跳行以
else if XXXX then begin
來陳述
__________________
就是發蓊梨(ㄛㄥˇ ㄌㄞˊ) 程式交易網站
[教學]指標公式及程式交易系統撰寫 [代工]
學會指標策略程式化的撰寫,將可讓你不再盲目投下辛苦賺來的血汗錢
要知道交易的策略或交易的模式長期執行下確實可獲利
交易才有意義的.否則寧可不交易
回覆: 請問語法
引用:
最初由 hwyhon 發表
請問奇狐的
else
if XXXX then begin
可否直接不跳行以
else if XXXX then begin
來陳述
這樣陳述就更易了解
祝新年快樂
謝謝
__________________
就是發蓊梨(ㄛㄥˇ ㄌㄞˊ) 程式交易網站
[教學]指標公式及程式交易系統撰寫 [代工]
學會指標策略程式化的撰寫,將可讓你不再盲目投下辛苦賺來的血汗錢
要知道交易的策略或交易的模式長期執行下確實可獲利
交易才有意義的.否則寧可不交易
引用:
最初由 hwyhon 發表
這樣陳述就更易了解
祝新年快樂
謝謝
回覆: 回覆: 請問語法
引用:
最初由 cgjj 發表
可以的, 範例如下:
if AA=1 then begin
......
end else if BB=1 then begin
......
end else if CC=1 then begin
..........
end;
__________________
--------------------------------------------------------
奇狐好 奇狐棒 奇狐呱呱叫
回覆: 回覆: 回覆: 請問語法
引用:
最初由 logahsu 發表
不好意思,剛好碰上我的一個疑惑。
請教總版主:
這裡的條件「AA=1」是不是說,aa只能給出數值的條件,而不能用「aa>bb」做為if .... then 的條件?
例如:
if dataperiod=1 then begin //這樣是沒問題
若改成:
AA:=C>MA(C,5);
if AA=1 then begin //這樣就一直顯示語法錯誤
為什麼?
第二種IF 通常會搭配迴圈做數列中的單一元素存取原碼:
IF datatype=2 then begin
X:=5;
end else begin
X:=10;
end;
建議總版主
能另開個數列迴圈專欄
將之前或日後有關這方面的主題或範例全移至該專欄裡
如此能方便大家學習奇狐更強大的編輯能力
盼能取得總版主的認同
謝謝
__________________
就是發蓊梨(ㄛㄥˇ ㄌㄞˊ) 程式交易網站
[教學]指標公式及程式交易系統撰寫 [代工]
學會指標策略程式化的撰寫,將可讓你不再盲目投下辛苦賺來的血汗錢
要知道交易的策略或交易的模式長期執行下確實可獲利
交易才有意義的.否則寧可不交易
OO:O;
CC:C;
AA:=CC*0;
for i = lbound(AA) to datacount do begin
if OO[i]>CC[i] then begin
X:=1;
end else if OO[i]<CC[i] then begin
X:=2;
end else if OO[i]=CC[i] then begin
X:=0;
end;
end;
x:x;
照理說當C>O時x應該顯示為1直到C<O時x才會顯示為2
為何x一直都是顯示為2
我如何才能正確表達或帶出x於每根K棒時的值呢
真是搞得有些迷糊
請解惑
__________________
就是發蓊梨(ㄛㄥˇ ㄌㄞˊ) 程式交易網站
[教學]指標公式及程式交易系統撰寫 [代工]
學會指標策略程式化的撰寫,將可讓你不再盲目投下辛苦賺來的血汗錢
要知道交易的策略或交易的模式長期執行下確實可獲利
交易才有意義的.否則寧可不交易
回覆: 建議總版主
引用:
最初由 hwyhon 發表
能另開個數列迴圈專欄
將之前或日後有關這方面的主題或範例全移至該專欄裡
如此能方便大家學習奇狐更強大的編輯能力
盼能取得總版主的認同
謝謝
引用:
最初由 hwyhon 發表
OO:O;
CC:C;
for i=1 to datacount do begin
if OO[i]>CC[i] then begin
X:=1;
end else if OO[i]<CC[i] then begin
X:=2;
end else if OO[i]=CC[i] then begin
X:=0;
end;
end;
x:x;
照理說當C>O時x應該顯示為1直到C<O時x才會顯示為2
為何x一直都是顯示為2
我如何才能正確表達或帶出x於每根K棒時的值呢
真是搞得有些迷糊
請解惑
原碼:
OO:O;
CC:C;
X:C*0; //先把X弄成一個零值數列
for i=1 to datacount do begin
if OO[i]>CC[i] then begin
X[i]:=1; //設定 X 數列中的第 i 個元素值為1
end else if OO[i]<CC[i] then begin
X[i]:=2; //設定 X 數列中的第 i 個元素值為2
end else if OO[i]=CC[i] then begin
X[i]:=0; //設定 X 數列中的第 i 個元素值為0
end;
end;
原來如此
謝謝
OO:O;
CC:C;
X:C*0; //先把X弄成一個零值數列
Y:X;
for i=1 to datacount do begin
if OO[i]>CC[i] then begin
X[i]:=1; //設定 X 數列中的第 i 個元素值為1
end else if OO[i]<CC[i] then begin
X[i]:=2; //設定 X 數列中的第 i 個元素值為2
end else if OO[i]=CC[i] then begin
X[i]:=0; //設定 X 數列中的第 i 個元素值為0
end;
if X[i]=1 then begin
Y[i]:=-1;
end else if X[i]=2 then begin
Y[i]:=-2;
end else if X[i]=0 then begin
Y[i]:=0;
end;
end;
終於弄懂了如何再帶入
有了新語法如魚得水
感謝版主的開釋
__________________
就是發蓊梨(ㄛㄥˇ ㄌㄞˊ) 程式交易網站
[教學]指標公式及程式交易系統撰寫 [代工]
學會指標策略程式化的撰寫,將可讓你不再盲目投下辛苦賺來的血汗錢
要知道交易的策略或交易的模式長期執行下確實可獲利
交易才有意義的.否則寧可不交易
if...then 的特色, 就是可以一次連續處理多個動作
故可以簡化為
原碼:
OO:O;
CC:C;
X:C*0;
Y:X;
for i=1 to datacount do begin
if OO[i]>CC[i] then begin
X[i]:=1; Y[i]:=-1;
end else if OO[i]<CC[i] then begin
X[i]:=2;
Y[i]:=-2;
end else if OO[i]=CC[i] then begin
X[i]:=0; Y[i]:=0;
end;
end;
單純以上例來說
Y 為 X 的相反, 故不需於迴圈中重複處理
可再精簡優化為:
原碼:
OO:O;
CC:C;
X:C*0;
for i=1 to datacount do begin
if OO[i]>CC[i] then begin
X[i]:=1;
end else if OO[i]<CC[i] then begin
X[i]:=2;
end else if OO[i]=CC[i] then begin
X[i]:=0;
end;
end;
Y:-X;
原碼:
OO:O;
CC:C;
X:C*0;
Y:X;
for i=1 to datacount do begin
if OO[i]>CC[i] then begin
X[i]:=1;
end else if OO[i]<CC[i] then begin
X[i]:=2;
end else if OO[i]=CC[i] then begin
X[i]:=0;
end;
Y[i]:=-X[i];
//....接其他後續處理
end;
| 全部時間均為台灣時間, 現在時間為18:02 | 在這個頁面顯示本主題全部的 14 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.