![]() |
在這個頁面顯示本主題全部的 9 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- [求救]如何能取得VALUEWHEN函數 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=10651)
[求救]如何能取得VALUEWHEN函數
[求救] 如何能取得VALUEWHEN函數
謝謝
先看valuewhen函數定義
VALUEWHEN(COND,DATA)當條件COND滿足時,取當時的DATA的值,否則取得VALUEWHEN的前一個值。
換成 奇狐的寫法
使用IF函數
IF(CONDITION,DATA1,DATA2);
當條件COND滿足時,取當時的DATA1的值,否則取得DATA2的值
這DATA1或者DATA2 都是您自己定義的
__________________
至誠能勝天下至偽
至拙能勝天下至巧
回覆: [求救]如何能取得VALUEWHEN函數
引用:
最初由 mowtua 發表
[求救] 如何能取得VALUEWHEN函數
謝謝
版主您好:
ValueWhen( 條件, Close);
如果能夠分成
條件>0 時 ==> REF(Close,BARSLAST(條件);==> 由左向右畫
條件<0 時 ===> 由右向左畫 ===> 目前是要用 SetVal() 來實現 , 由右向左畫還蠻常用到的, 所以希望能有更簡潔明瞭的指令可取代 SetVal()
那 ValueWhen() 應該會更完美 , 而不是只能做 "單一方向 Ref()" 功用 , 也能夠做 Refx() 的方向
當然這樣設計也是會有缺點 , 缺點就是沒有辦法 "直接從指令名字" 看出他是向左畫 , 還是向右畫 , 必須觀察 "條件" 是大於0 還是<0 才能判斷
__________________
偶而是不是也感覺有些老
像個大人般的戀愛
有時心情糟
請你相信我在你身邊別忘了
引用:
最初由 alpha 發表
版主您好:
ValueWhen( 條件, Close);
如果能夠分成
條件>0 時 ==> REF(Close,BARSLAST(條件);==> 由左向右畫
條件<0 時 ===> 由右向左畫 ===> 目前是要用 SetVal() 來實現 , 由右向左畫還蠻常用到的, 所以希望能有更簡潔明瞭的指令可取代 SetVal()
那 ValueWhen() 應該會更完美 , 而不是只能做 "單一方向 Ref()" 功用 , 也能夠做 Refx() 的方向
當然這樣設計也是會有缺點 , 缺點就是沒有辦法 "直接從指令名字" 看出他是向左畫 , 還是向右畫 , 必須觀察 "條件" 是大於0 還是<0 才能判斷
若以設值來考量(水平線應用)
SetVal
由左向右設值 和 由右向左設值
都是可以的唷
SETVAL(X,Q,N,V)
方向由V值之正負值來決定
(1)
沒錯哦
我是以設值來考量(水平線應用)
為了方便說明 , 才會用 "由左往右畫" 字眼
(2)
SetVal 是可以雙向 ,但是就是覺得他不夠直覺易用 ( 因為它是屬於萬用型 )
(3)
看到版主說奇狐要增加各 ValueWhen( 條件, Close); 指令, 又提到 它 = REF(Close,BARSLAST(條件);
REF(Close,BARSLAST(條件); 已經非常簡潔方便了 , 但是奇狐新版竟然還要增加各 ValueWhen( ) 來讓它 "更簡潔"
這讓我"聯想" 到若也能同時處理 " 由右向左設值" 那就更好了
舉例
http://www.chiefox.com.tw/bbs/showt...ighlight=SetVal
ck:=MOD(MINUTE,15)=0 or barpos=datacount;
sp:=ref(barslast(ck),1)+1;
MH:HHV(H,SP);
MH:=SETVAL(CK,MH,-SP+1,MH);
MH:=SETVAL(CK,MH,0,MH);
若 ValueWhen() 具備條件<0 時 ==> 由右向左設值 , 那寫法就如下
MH:= ValueWhen( -CK, MH) ; // 比用 SetVal 更易用明瞭
__________________
偶而是不是也感覺有些老
像個大人般的戀愛
有時心情糟
請你相信我在你身邊別忘了
引用:
最初由 alpha 發表
..........
若 ValueWhen() 具備條件<0 時 ==> 由右向左設值 , 那寫法就如下
MH:= ValueWhen( -CK, MH) ; // 比用 SetVal 更易用明瞭![]()
ck:=MOD(MINUTE,15)=0 or barpos=datacount;
sp:=ref(barslast(ck),1)+1;
MH:HHV(H,SP),COLORYELLOW;
MH2:LLV(L,SP),COLORYELLOW;
全部時間均為台灣時間, 現在時間為07:29 | 在這個頁面顯示本主題全部的 9 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.