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

奇狐社區論壇 (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=1596)


由 godhorse 在 2004-09-15 00:49 發表:

欲表達一個"維持之前數據"公式,請幫忙看一下,謝謝

欲表達一個公式
VAR1: IF (H>REF(H,1),H,????)
若今日高點>昨日高點,則以今日H 當成VAR1
若不是,則維持前一個VAR1
===============
舉例: 以台指當月日線9/14起為例

實際數據................VAR1

今天H.: 5956............5956
前1天H: 5939............5939
前2天H: 5875............5875
前3天H: 5854............?(還是維持5879)
前4天H: 5879............5879
前5天H: 5842............5842
前6天H: 5788............??(還是維持5870)
前7天H: 5870............5870
前8天H: 5860
==================================
1. 前7天H > 前8天 H ,所以用當天H代表VAR1=5870

2. 前6天H < 前7天 H, 條件不成立,
此時我想維持VAR1 依舊是5870(前7天的H) ,該如何表達呢??

3. 前3天H < 前4天 H, 條件不成立,
此時我想維持VAR1 依舊是5879(前4天的H) ,該如何表達呢??

VAR1:IF (H>REF(H,1),H,REF(VAR1,1));
我本來寫成這樣,但執行起來怪怪低
所以麻煩大大們一下
謝謝大大們.......

__________________
JOHN


由 king 在 2004-09-15 01:03 發表:

HHV(H,2)


由 godhorse 在 2004-09-15 02:04 發表:

謝謝大大
但偶還有一個問題

==============================
台指現貨日資料
........實際.............var1
7/9H.: 5724............
7/10H: 5761............5761
7/11H: 5698............5761
7/12H: 5682............5761
7/13H: 5620............5761
7/14H: 5582............5761

上面舉例是剛好隔一天
但是若遇到下跌段,如7/9~7/14
1. 7/10H > 7/9H ,所以var1=5761
之後7/11 7/12 7/13 7/14因為都未過前一天高點
我希望var1 還是等於 5761
若是用HHV(h,2)...好像是前兩天的高點
這樣能解決嗎??會不會粉複雜(若要用到VB就算囉)
謝謝

__________________
JOHN


由 pual 在 2004-09-15 09:25 發表:

引用:
最初由 godhorse 發表
==============================
台指現貨日資料
........實際.............var1
7/9H.: 5724............
7/10H: 5761............5761
7/11H: 5698............5761
7/12H: 5682............5761
7/13H: 5620............5761
7/14H: 5582............5761

上面舉例是剛好隔一天
但是若遇到下跌段,如7/9~7/14
1. 7/10H > 7/9H ,所以var1=5761
之後7/11 7/12 7/13 7/14因為都未過前一天高點
我希望var1 還是等於 5761
若是用HHV(h,2)...好像是前兩天的高點
這樣能解決嗎??會不會粉複雜(若要用到VB就算囉)
謝謝



你的邏輯好像有點不完整,
照你這樣描述的話,
這個『........實際.............var1』
將是只准上不准下;

如果將這視為一檔今年剛上市的個股,
那麼它的價位將會卡在7135下不來,
這樣會有意義嗎?是否須要稍做修正;
它在什麼條件下會下移?


由 godhorse 在 2004-09-15 09:38 發表:

回大大...
===================================
台指現貨日資料
........實際.............var1
7/9H.: 5724............
7/10H: 5761............5761
7/11H: 5698............5761
7/12H: 5682............5761
7/13H: 5620............5761
7/14H: 5682............5761
7/15H: 5620............5761
7/16H: 5582............5761
7/19H: 5545............5761
7/20H: 5488............5761
7/21H: 5430............5761
7/22H: 5308............5761
7/23H: 5339............5339
===================================
它不會ㄧ直卡在那邊
VAR1: IF (H>REF(H,1),H,????)
若今日高點>昨日高點,則以今日H 當成VAR1
若不是,則維持前一個VAR1

因為7/11-7/22 每日高點均未過前一天高點
故VAR1 ㄧ直維持在5761(7/10日高點)(前一個條件發生時的數值)
ㄧ直到7/23 高點 突破7/22 高點
此時條件成立, VAR1 改成當日高點,也就是7/23 高點(5339)
需要如何表達呢??
謝謝

__________________
JOHN


由 yyyyyy 在 2004-09-15 13:55 發表:

是要這樣的嗎?


由 yyyyyy 在 2004-09-15 13:56 發表:

這是飛狐的公式


由 pual 在 2004-09-15 15:44 發表:

NO:=BARSLAST(HIGH>REF(HIGH,1));

VAR1:IF(HIGH>REF(HIGH,1),HIGH,REF(HIGH,NO));


重點只在於
數目:=上一次條件成立位置(最高價>向前引用(最高價,1));

__________________
奇狐的優點:請秉持『好東西與好朋友分享』,告訴你的朋友。
奇狐的不足:請秉持『百尺竿頭,更上一步』,告訴總版主。


由 godhorse 在 2004-09-15 19:51 發表:

謝謝大大們提示
豁然開朗

明日開始充滿希望

3Q3Q

__________________
JOHN


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


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

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