@@ -744,3 +744,359 @@ _INTRATE(settlement, maturity, investment, redemption, [basis])_
744
744
* Redemption : The amount to be received at maturity.
745
745
746
746
* Basis : The type of specifies the day count basis to used in the calculation.
747
+
748
+
749
+
750
+ ## NOMINAL
751
+
752
+ the function ` NOMINAL ` returns the nominal annual interest rate, given the effective rate and the number of compounding periods per year.
753
+
754
+ ** Syntax:**
755
+
756
+ _ NOMINAL(effect_rate, npery)_
757
+
758
+ ** Where:**
759
+
760
+ * effect_rate: The effective interest rate.
761
+
762
+ * npery: The number of compounding periods per year.
763
+
764
+ ** Remarks:**
765
+
766
+ * Npery is truncated to an integer.
767
+
768
+ * If either argument is nonnumeric, ` NOMINAL ` returns the ` #VALUE! ` error value.
769
+
770
+ * If effect_rate ≤ 0 or if npery < 1, ` NOMINAL ` returns the ` #NUM! ` error value.
771
+
772
+ * ` NOMINAL ` is related to ` EFFECT ` function. The relationship between ` NOMINAL ` and ` EFFECT ` is shown in the following equation:
773
+
774
+ ` effective_rate = (1 + (nominal_rate / npery))^npery - 1 `
775
+
776
+
777
+
778
+ ## MDURATION
779
+
780
+ The function ` MDURATION ` returns the modified Macauley duration for a security with an assumed par value of $100.
781
+
782
+ ** Syntax:**
783
+
784
+ _ MDURATION(settlement, maturity, coupon, yld, frequency, [ basis] )_
785
+
786
+ ** Where:**
787
+
788
+ * settlement: The security's settlement date.
789
+
790
+ * maturity: The security's maturity date.
791
+
792
+ * coupon: The security's annual coupon rate.
793
+
794
+ * yld: The security's annual yield.
795
+
796
+ * frequency: The number of coupon payments per year (1 for annual, 2 for semiannual, 4 for quarterly).
797
+
798
+ * basis (Optional): The day count basis to use (default is 0: US (NASD) 30/360):
799
+
800
+ * 0 or omitted: US (NASD) 30/360
801
+
802
+ * 1: Actual/actual
803
+
804
+ * 2: Actual/360
805
+
806
+ * 3: Actual/365
807
+
808
+ * 4: European 30/360
809
+
810
+ ** Remarks:**
811
+
812
+ * Dates are stored as serial numbers. For example, January 1, 1900 is 1, and January 1, 2008 is 39448.
813
+
814
+ * If settlement or maturity is not valid, ` MDURATION ` returns ` #VALUE! ` .
815
+
816
+ * If yld < 0 or coupon < 0, it returns ` #NUM! ` . If frequency is not 1, 2, or 4, it returns ` #NUM! ` .
817
+
818
+ * If basis is outside the range 0-4, it returns ` #NUM! ` .
819
+
820
+ * If settlement is greater than or equal to maturity, it returns ` #NUM! ` .
821
+
822
+ * Equation to calculate ` MDURATION ` is ` Modified Duration = Macauley Duration / (1 + (yld / frequency)) ` .
823
+
824
+
825
+
826
+ ## PDURATION
827
+
828
+ The function ` PDURATION ` returns the number of periods required by an investment to reach a specified value.
829
+
830
+ ** Syntax:**
831
+
832
+ _ PDURATION(rate, pv, fv)_
833
+
834
+ ** Where:**
835
+
836
+ * rate: The interest rate per period.
837
+
838
+ * pv: The present value of the investment.
839
+
840
+ * fv: The desired future value of the investment.
841
+
842
+ ** Remarks:**
843
+
844
+ * If rate is less than or equal to 0, or if pv or fv is less than or equal to 0, ` PDURATION ` returns the ` #NUM! ` error value.
845
+
846
+ * If any argument is nonnumeric, ` PDURATION ` returns the ` #VALUE! ` error value.
847
+
848
+ * The ` PDURATION ` function calculates the number of periods required using the following equation:
849
+
850
+ ` PDURATION = LOG(fv / pv) / LOG(1 + rate) `
851
+
852
+
853
+
854
+ ## COUPDAYS
855
+
856
+ The function ` COUPDAYS ` returns the number of days in the coupon period that contains the settlement date.
857
+
858
+ ** Syntax:**
859
+
860
+ _ COUPDAYS(settlement, maturity, frequency, [ basis] )_
861
+
862
+ ** Where:**
863
+
864
+ * settlement: The security's settlement date.
865
+
866
+ * maturity: The security's maturity date.
867
+
868
+ * frequency: The number of coupon payments per year (1 for annual, 2 for semiannual, 4 for quarterly).
869
+
870
+ * basis (Optional): The type of day count basis to use:
871
+
872
+ * 0 or omitted: US (NASD) 30/360
873
+
874
+ * 1: Actual/actual
875
+
876
+ * 2: Actual/360
877
+
878
+ * 3: Actual/365
879
+
880
+ * 4: European 30/360
881
+
882
+ ** Remarks:**
883
+
884
+ * Dates are stored as serial numbers. For example, January 1, 1900 is 1, and January 1, 2008 is 39448.
885
+
886
+ * If settlement or maturity is not a valid date, ` COUPDAYS ` returns ` #VALUE! ` .
887
+
888
+ * If frequency is any number other than 1, 2, or 4, ` COUPDAYS ` returns ` #NUM! ` .
889
+
890
+ * If basis is outside the range 0-4, ` COUPDAYS ` returns ` #NUM! ` .
891
+
892
+ * If settlement is greater than or equal to maturity, ` COUPDAYS ` returns ` #NUM! ` .
893
+
894
+
895
+
896
+ ## COUPDAYBS
897
+
898
+ The function ` COUPDAYBS ` returns the number of days from the beginning of a coupon period until its settlement date.
899
+
900
+ ** Syntax:**
901
+
902
+ _ COUPDAYBS(settlement, maturity, frequency, [ basis] )_
903
+
904
+ ** Where:**
905
+
906
+ * settlement: The security's settlement date.
907
+
908
+ * maturity: The security's maturity date.
909
+
910
+ * frequency: The number of coupon payments per year (1 for annual, 2 for semiannual, 4 for quarterly).
911
+
912
+ * basis (Optional): The day count basis to use (default is 0: US (NASD) 30/360):
913
+
914
+ * 0 or omitted: US (NASD) 30/360
915
+
916
+ * 1: Actual/actual
917
+
918
+ * 2: Actual/360
919
+
920
+ * 3: Actual/365
921
+
922
+ * 4: European 30/360
923
+
924
+ ** Remarks:**
925
+
926
+ * Dates are stored as serial numbers. For example, January 1, 1900 is 1, and January 1, 2008 is 39448.
927
+
928
+ * If settlement or maturity is not valid, ` COUPDAYBS ` returns ` #VALUE! ` .
929
+
930
+ * If frequency is any number other than 1, 2, or 4, ` COUPDAYBS ` returns ` #NUM! ` .
931
+
932
+ * If basis is outside the range 0-4, it returns ` #NUM! ` .
933
+
934
+ * If settlement is greater than or equal to maturity, it returns ` #NUM! ` .
935
+
936
+
937
+
938
+ ## COUPDAYSNC
939
+
940
+ The function ` COUPDAYSNC ` returns the number of days from the settlement date to the next coupon date.
941
+
942
+ ** Syntax:**
943
+
944
+ _ COUPDAYSNC(settlement, maturity, frequency, [ basis] )_
945
+
946
+ ** Where:**
947
+
948
+ * settlement: The security's settlement date.
949
+
950
+ * maturity: The security's maturity date.
951
+
952
+ * frequency: The number of coupon payments per year (1 for annual, 2 for semiannual, 4 for quarterly).
953
+
954
+ * basis (Optional): The day count basis to use (default is 0: US (NASD) 30/360):
955
+
956
+ * 0 or omitted: US (NASD) 30/360
957
+
958
+ * 1: Actual/actual
959
+
960
+ * 2: Actual/360
961
+
962
+ * 3: Actual/365
963
+
964
+ * 4: European 30/360
965
+
966
+ ** Remarks:**
967
+
968
+ * Dates are stored as serial numbers. For example, January 1, 1900 is 1, and January 1, 2008 is 39448.
969
+
970
+ * If settlement or maturity is not valid, ` COUPDAYSNC ` returns ` #VALUE! ` .
971
+
972
+ * If frequency is any number other than 1, 2, or 4, ` COUPDAYSNC ` returns ` #NUM! ` .
973
+
974
+ * If basis is outside the range 0-4, it returns ` #NUM! ` .
975
+
976
+ * If settlement is greater than or equal to maturity, it returns ` #NUM! ` .
977
+
978
+
979
+
980
+ ## COUPPCD
981
+
982
+ The function ` COUPPCD ` returns a number that represents the previous coupon date before the settlement date.
983
+
984
+ ** Syntax:**
985
+
986
+ _ COUPPCD(settlement, maturity, frequency, [ basis] )_
987
+
988
+ ** Where:**
989
+
990
+ * settlement: The security's settlement date.
991
+
992
+ * maturity: The security's maturity date.
993
+
994
+ * frequency: The number of coupon payments per year (1 for annual, 2 for semiannual, 4 for quarterly).
995
+
996
+ * basis (Optional): The day count basis to use (default is 0: US (NASD) 30/360):
997
+
998
+ * 0 or omitted: US (NASD) 30/360
999
+
1000
+ * 1: Actual/actual
1001
+
1002
+ * 2: Actual/360
1003
+
1004
+ * 3: Actual/365
1005
+
1006
+ * 4: European 30/360
1007
+
1008
+ ** Remarks:**
1009
+
1010
+ * Dates are stored as serial numbers. For example, January 1, 1900 is 1, and January 1, 2008 is 39448.
1011
+
1012
+ * If settlement or maturity is not valid, ` COUPPCD ` returns ` #VALUE! ` .
1013
+
1014
+ * If frequency is any number other than 1, 2, or 4, ` COUPPCD ` returns ` #NUM! ` .
1015
+
1016
+ * If basis is outside the range 0-4, it returns ` #NUM! ` .
1017
+
1018
+ * If settlement is greater than or equal to maturity, it returns ` #NUM! ` .
1019
+
1020
+
1021
+
1022
+ ## COUPNCD
1023
+
1024
+ The function ` COUPNCD ` returns a number that represents the next coupon date after the settlement date.
1025
+
1026
+ ** Syntax:**
1027
+
1028
+ _ COUPNCD(settlement, maturity, frequency, [ basis] )_
1029
+
1030
+ ** Where:**
1031
+
1032
+ * settlement: The security's settlement date.
1033
+
1034
+ * maturity: The security's maturity date.
1035
+
1036
+ * frequency: The number of coupon payments per year (1 for annual, 2 for semiannual, 4 for quarterly).
1037
+
1038
+ * basis (Optional): The day count basis to use (default is 0: US (NASD) 30/360):
1039
+
1040
+ * 0 or omitted: US (NASD) 30/360
1041
+
1042
+ * 1: Actual/actual
1043
+
1044
+ * 2: Actual/360
1045
+
1046
+ * 3: Actual/365
1047
+
1048
+ * 4: European 30/360
1049
+
1050
+ ** Remarks:**
1051
+
1052
+ * Dates are stored as serial numbers. For example, January 1, 1900 is 1, and January 1, 2008 is 39448.
1053
+
1054
+ * If settlement or maturity is not valid, ` COUPNCD ` returns ` #VALUE! ` .
1055
+
1056
+ * If frequency is any number other than 1, 2, or 4, ` COUPNCD ` returns ` #NUM! ` .
1057
+
1058
+ * If basis is outside the range 0-4, it returns ` #NUM! ` .
1059
+
1060
+ * If settlement is greater than or equal to maturity, it returns ` #NUM! ` .
1061
+
1062
+
1063
+
1064
+ ## COUPNUM
1065
+
1066
+ The function ` COUPNUM ` returns the number of coupons payable between the settlement date and maturity date, rounded up to the nearest whole coupon.
1067
+
1068
+ ** Syntax:**
1069
+
1070
+ _ COUPNUM(settlement, maturity, frequency, [ basis] )_
1071
+
1072
+ ** Where:**
1073
+
1074
+ * settlement: The security's settlement date.
1075
+
1076
+ * maturity: The security's maturity date.
1077
+
1078
+ * frequency: The number of coupon payments per year (1 for annual, 2 for semiannual, 4 for quarterly).
1079
+
1080
+ * basis (Optional): The day count basis to use (default is 0: US (NASD) 30/360):
1081
+
1082
+ * 0 or omitted: US (NASD) 30/360
1083
+
1084
+ * 1: Actual/actual
1085
+
1086
+ * 2: Actual/360
1087
+
1088
+ * 3: Actual/365
1089
+
1090
+ * 4: European 30/360
1091
+
1092
+ ** Remarks:**
1093
+
1094
+ * Dates are stored as serial numbers. For example, January 1, 1900 is 1, and January 1, 2008 is 39448.
1095
+
1096
+ * If settlement or maturity is not valid, ` COUPNUM ` returns ` #VALUE! ` .
1097
+
1098
+ * If frequency is any number other than 1, 2, or 4, ` COUPNUM ` returns ` #NUM! ` .
1099
+
1100
+ * If basis is outside the range 0-4, ` COUPNUM ` returns ` #NUM! ` .
1101
+
1102
+ * If settlement is greater than or equal to maturity, ` COUPNUM ` returns ` #NUM! ` .
0 commit comments